我有一个UserRepository,它是一个CRUD存储库,如图所示:
@Repository
public interface UserRepository extends CrudRepository<User, Long> {
}
一个UserController如下所示:
@RestController
@RequestMapping("/api")
public class UserController {
@Autowired
private UserRepository repository;
@Autowired
private UserResourceAssembler assembler;
和一个WebMvcTest类来测试我的UserController:
@RunWith(SpringRunner.class)
@WebMvcTest(UserController.class)
public class UserControllerTest {
@Autowired
private MockMvc mvc;
@Test
public void getAllEmployeesAPI() throws Exception
{
mvc.perform( MockMvcRequestBuilders
.get("/api/users")
.accept(MediaType.APPLICATION_JSON))
.andDo(print())
.andExpect(status().isOk());
}
}
当我运行服务器时,一切都很好。但是,当我运行maven-test时,我得到了这个错误:
java.lang.IllegalStateException:未能加载ApplicationContext,原因是:org.SpringFramework.Beans.Factory.UnsatisfiedDependencyException:创建名为“User Controller”的bean时出错:通过字段“repository”表示的不满足依赖项;嵌套异常为org.springframework.beans.factory.BeanCreationException:创建名为“User Repository”的bean时出错:设置bean属性“Entity Manager”时无法创建类型为[org.springframework.orm.jpa.SharedEntityManagerCreator]的内部bean“(内部bean)#7BA1CDBE”;嵌套异常为org.springframework.beans.factory.BeanCreationException:创建名为“(内部bean)#7BA1CDBE”的bean时出错:设置构造函数参数时无法解析对bean“Entity ManagerFactory”的引用;嵌套异常为org.springframework.beans.factory.NoSuchBeanDefinitionException:没有名为“Entity ManagerFactory”的bean可用,原因是:org.springframework.beans.factory.beanCreationException:创建名为“User Repository”的bean时出错:设置bean属性“Entity Manager”时无法创建类型为[org.springframework.orm.jpa.SharedEntityManagerCreator]的内部bean“(内部bean)#7BA1CDBE”;嵌套异常为org.springframework.beans.factory.BeanCreationException:创建名为“(内部bean)#7BA1CDBE”的bean时出错:设置构造函数参数时无法解析对bean“Entity ManagerFactory”的引用;嵌套异常为org.springframework.beans.factory.noSuchBeanDefinitionException:没有名为“Entity ManagerFactory”的bean可用,原因是:org.springframework.beans.factory.beanCreationException:创建名为“(内部bean)#7BA1CDBE”的bean时出错:设置构造函数参数时无法解析对bean“Entity ManagerFactory”的引用;嵌套异常为org.springframework.beans.factory.NoSuchBeanDefinitionException:没有名为“Entity ManagerFactory”的bean可用,原因为:org.springframework.beans.factory.NoSuchBeanDefinitionException:没有名为“Entity ManagerFactory”的bean可用
@webmvctest
只加载Web层。如果它包含一些依赖项,那么您也需要加载应用程序上下文。您可以使用@ContextConfiguration(类={YouTestConfiguration.class})
缩小仅在控制器中使用的依赖关系
如果您现在有相同的结构,我推荐@springboottest
。
@webmvctest
不会将与数据库相关的bean加载到应用程序上下文中。
我试图理解maven是如何从存储库中下载二进制文件的。 例如,我的项目有以下依赖关系: 现在,这些二进制文件出现在http://mvnrepository.com/. 在pom.xml中,我们有
我已经在pom中配置了本地maven存储库。xml。当我构建项目时,它会显示依赖项下载错误(请参阅下面的日志)。Maven正在尝试从我的本地Maven存储库下载所有依赖项。 日志 这是我的pom。xml文件 本地存储库是http://XXX。XXX。XX。XXX:8081/artifactory/libs本地发布 xml。背景
我有一个奇怪的问题,< code > mvn clean install-d project . version = 1 或< code>jenkins build运行正常,但当我在IDE中打开模块时,intellij变得非常愤怒,这影响了开发。 我在intellij日志中看到以下问题 POM 代码受版权保护,所以不能透露,但这是一个基本大纲 < li>fabric-common:基本模块(用于绑
我想将审核更改持久化到oracle db。micro服务是一个带有hibernate的Spring Boot应用程序。我在javers的mvn存储库链接中发现了许多依赖项 我应该为oracle db使用哪个依赖项?
我是一名新的Android学习者,我正在为语言翻译制作我的第一个Android应用程序。在添加了一些依赖项之后,我遇到了一些问题。我该怎么解决这个问题? Gradle同步失败:无法解决配置的所有依赖项: app: dedegRuntimeClasspath。无法确定android.arch.lifecycle的工件: livedata: 1.1.1:脱机模式下没有缓存版本有关详细信息,请参阅IDE
我在Eclipse4.18中遇到了一个奇怪的问题,我希望有人能帮我解决这个问题。我的项目是一个jetty webapp,它通过FTP与外部服务器进行通信。我正在使用mockftpserver(https://mockftpserver.org/)帮助对需要与FTP服务器通信的代码进行单元测试。 我在pom中将库依赖项定义为 然后我在测试类中定义了一个导入,比如 没有什么太奇怪的事情发生,maven