J'ai écrit une application de démarrage du ressort de l'échantillon et il ne parvient pas à exécuter avec le messagegrain de printemps avec l'annotation non identifié @Repository
` Description: Champ customerRepository dans com.hibernatetutorial.service.CustomerServiceImpl nécessaire un haricot de tapez 'com.hibernatetutorial.repository.CustomerRepository' qui n'a pas pu être trouvé.
Action: Tenir compte définir un bean de type 'com.hibernatetutorial.repository.CustomerRepository' dans votre configuration.`
J'ai une annotation sur @Repository classe CustomerRepository et il est package est là dans l'analyse des paquets de base .
ci-dessous la configuration
@SpringBootApplication
@ComponentScan(basePackages="com.hibernatetutorial")
public class HibernateTutorialApplication {
public static void main(String[] args) {
SpringApplication.run(HibernateTutorialApplication.class, args);
}
}
@Repository
@Transactional
public interface CustomerRepository extends JpaRepository<Customer, UUID>{
}
@Service
@Transactional
public class CustomerServiceImpl implements CustomerService {
@Autowired
private CustomerRepository customerRepository;
public Customer createCustomer(Customer customer) {
return customerRepository.save(customer);
}
}
entité client est annotées avec @Entity. Toute suggestion si je manque quelque chose
Y a-t-il une raison pour laquelle vous spécifiez @ComponentScan manuellement? Ces classes sont-elles dans des paquets différents? – dillius
Oui, ils sont dans leurs paquets respectifs comme service, référentiel, modèle etc .. J'ai supprimé componentscan et l'a remplacé par SpringBootApplication (scanBasePackages = {"com.hibernatetutorial"}) comme SpringBootApplication se chargera également de l'analyse des composants, mais toujours l'erreur est-il – arjun
Lorsque vous avez essayé d'utiliser @EnableJpaRepositories, avez-vous spécifié le package exact comme vous l'avez fait pour l'analyse des composants? – dillius