我在尝试启动应用时遇到此错误。我看过许多类似的问题和主题,但似乎没有人帮助我。
创建名为'databaseManager'的bean时出错:不满意的依赖项 通过字段'articleRepo'表达;嵌套异常是 org.springframework.beans.factory.NoSuchBeanDefinitionException:没有 合格的bean类型 'pl.dzejkobdevelopment.database.repositories.ArticleRepo'可用: 预计至少有1个豆有资格成为autowire候选人。依赖 注释: {@ org.springframework.beans.factory.annotation.Autowired(所需=真)}
@Repository
public interface ArticleRepo extends CrudRepository<Article, Long> {
}
和...
@Service
public class DatabaseManager {
@Autowired
private ArticleRepo articleRepo;
@Autowired
private CommentRepo commentRepo;
@Autowired
private TagRepo tagRepo;
@Autowired
private UserRepo userRepo;
public void addArticle(Article article){
article.getTags().forEach(tag ->addTag(tag));
articleRepo.save(article);
}
public List<Comment> findComments(User user){
return commentRepo.findByCommentAuthor(user);
}
private void addTag(Tag tag){
tagRepo.save(tag);
}
}
和...
@Configuration
//@ComponentScan(basePackages="pl.dzejkobdevelopment.database.repositories")
public class AppConfig {
@Bean
public WebsiteProporties websiteProporties(){
return new WebsiteProporties();
}
@Bean
public StorageProperties storageProporties(){ return new StorageProperties();}
@Bean
public DatabaseManager databaseManager(){ return new DatabaseManager();}
}
}
取消注释ComponentScan
没有用。
修改
更改ComponentScan
的{{1}}会出现此错误:
创建名为'databaseManager'的bean时出错:通过字段'articleRepo'表示不满意的依赖关系;嵌套异常是org.springframework.beans.factory.BeanCreationException:创建名为'articleRepo'的bean时出错:设置bean时无法创建[org.springframework.orm.jpa.SharedEntityManagerCreator]类型的内部bean'(内部bean)#14a1d6d' property'entalManager';嵌套异常是org.springframework.beans.factory.BeanCreationException:创建名为'(内部bean)#14a1d6d'的bean时出错:在设置构造函数参数时无法解析对bean'entalManagerFactory'的引用;嵌套异常是org.springframework.beans.factory.NoSuchBeanDefinitionException:没有名为'entityManagerFactory'的bean可用
答案 0 :(得分:0)
尝试使用
@EnableJpaRepositories("pl.dzejkobdevelopment.database.repositories")
而不是ComponentScan。