Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Beancreationexception+;NoSuchBean定义异常_Java_Spring_Spring Boot_Spring 4 - Fatal编程技术网

Java Beancreationexception+;NoSuchBean定义异常

Java Beancreationexception+;NoSuchBean定义异常,java,spring,spring-boot,spring-4,Java,Spring,Spring Boot,Spring 4,我正在使用SpringBoot开发Spring4应用程序 在com.test.tm包中, 应用程序类别: @SpringBootApplication @EnableJpaRepositories( repositoryFactoryBeanClass = GenericRepositoryFactoryBean.class ) @Import( { HikariDataSourceConfig.class } ) public class Application { p

我正在使用SpringBoot开发Spring4应用程序

在com.test.tm包中,
应用程序类别:

@SpringBootApplication   
@EnableJpaRepositories( repositoryFactoryBeanClass = GenericRepositoryFactoryBean.class )  
@Import( { HikariDataSourceConfig.class } )  
public class Application {  
   public static void main( String[] args )
   {
    SpringApplication.run(Application.class, args);
   }  
}  
在com.test.tm.entities包中,
用户类别:

@Table( name = "test.user" )
@Entity
public class User implements Serializable {  
  @Id
  @GeneratedValue( strategy = GenerationType.AUTO )
  private Integer id;
  private String message;  
  ....  
}  
在com.test.tm.user中
UserService.class:

@Service
@Transactional( rollbackFor = Exception.class )
public class UserService {

@Autowired
private GenericRepository<User, Serializable> gr;

 public User saveEntity( User usr )
 {
    return gr.save(usr);
 }

 public String getUser()
 {
    //Get User logic
 }  
}  
  • 并没有我定义的名为userService的变量,但它仍然显示错误
  • 我可以用任何方法解决上述问题 公元1年。 Spring使用默认名称创建
    userService
    bean,如中所示

    公元2年。我当然不是苏,但也许
    GenericRepositoryImpl
    不属于
    com.test.tm
    软件包?如果是,则使用适当的包声明指定附加的
    @ComponentScan
    注释,即
    @ComponentScan(“com.test.utils”)
    ,或者-如果使用Boot 1.3+-修改
    @SpringBoot应用程序(scanBasePackages={“com.test.utils”,“com.test.tm”})

    For 1/SpringBoot将自动扫描当前包(默认)Application.java位于何处并解析了自动连线字段(如gr)。对于2/我不知道com.test.utils.spring.repo.GenericRepository是什么,您可以将其添加到您的帖子中吗?@alias\u boubou:我已经添加了GenricRepository
    @NoRepositoryBean
    public interface GenericRepository<T, ID extends Serializable> extends PagingAndSortingRepository<T, ID> {
        public List<T> findByNamedQuery( String name );
        public List<T> findByNamedQueryAndParams( String name, Map<String, Object> params );
     }  
    
    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userService': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.test.utils.spring.repo.GenericRepository com.test.tm.user.UserService.gr; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type[com.test.utils.spring.repo.GenericRepository] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency.Dependency annotations: {@ org.springframework.beans.factory.annotation.Autowired(required = true) }