Java spring boot找不到类型为的bean

Java spring boot找不到类型为的bean,java,spring,spring-boot,javabeans,Java,Spring,Spring Boot,Javabeans,我试图简单地创建web门户,但当我试图通过 mvn清洁安装-X 我得到了错误代码 说明: com.kapjee.dziennik.service.UserDetailsServiceImpl中的字段userRepository需要找不到类型为“com.kapjee.dziennik.service.userRepository”的bean。 行动: 考虑在您的配置中定义一个类型为COM.KAPJE.DZENNIK.Service,USER存储库的bean。< /P> 下面给你一个项目树 Use

我试图简单地创建web门户,但当我试图通过

mvn清洁安装-X

我得到了错误代码

说明: com.kapjee.dziennik.service.UserDetailsServiceImpl中的字段userRepository需要找不到类型为“com.kapjee.dziennik.service.userRepository”的bean。 行动: 考虑在您的配置中定义一个类型为COM.KAPJE.DZENNIK.Service,USER存储库的bean。< /P> 下面给你一个项目树

UserDetailsServiceImpl

@Service
public class UserDetailsServiceImpl implements UserDetailsService {

@Autowired
private UserRepository userRepository;

@Override
@Transactional(readOnly = true)
public UserDetails loadUserByUsername(String username) throws 
UsernameNotFoundException {

 User user = userRepository.findByUsername(username);
   if (user != null) {
      Set<GrantedAuthority> grantedAuthorities = new HashSet<>();
      grantedAuthorities.add(new 
      SimpleGrantedAuthority(user.getRole().toString()));
      return new 
      org.springframework.security.core.userdetails.User(user.getUsername(),
      user.getPassword(), grantedAuthorities);
  } else {
    throw new UsernameNotFoundException("User was not found!");
  }

 }

}
和用户存储库

public interface UserRepository extends  JpaRepository<User, Long> {
  User findByUsername(String username);
}

很可能,
EnableJpaRepositories
导入了错误的包。我猜
UserRepository
不在
model
包中。使用类型安全属性
basePackageClasses
而不是
basePackages
@ComponentScan
EntityScan
在您的案例中是多余的。我很抱歉地说,但是看起来你把一些带创可贴和胶水的代码放在一起,没有真正了解你在做什么。
@EnableJpaRepositories("com.kapjee.dziennik.model") 
我看到您在模型包中指定了jpa存储库,您还需要包含包含存储库的包,因此如果您的存储库位于com.kapjee.dziennik.repository包下,只需返回一级即可

 @EnableJpaRepositories("com.kapjee.dziennik") 

您是否错过了
UserRepository
?@RC上的
@Repository
。这不是必需的。您是否可以共享您的软件包设置?即使我在UserRepository上添加了@Repository,它也不起作用error@AmerQarabsa是的,我共享软件包这里有一个指向项目树的链接,在那个里你们可以看到它应该像这样的文件
@ComponentScan(basePackages={“com.kapjee.dziennik”},basePackageClasses=com.kapjee.dziennik.service.UserRepository.class)
@artist
springbootcapplication
是一个已经包含
ComponentScan
的元注释。尽可能地使用IDE。@如果这解决了您的问题,请随意接受答案:)但如果我使用thymeleaf在视图中更改了一件事,它仍然是相同的错误/尝试将@ComponentScan与基本包一起添加
@ComponentScan(basePackages={“com.kapjee.dziennik”})
如下?是的,那么您什么时候会看到此错误?不是在启动阶段,对吗?
@EnableJpaRepositories("com.kapjee.dziennik.model") 
 @EnableJpaRepositories("com.kapjee.dziennik")