спрнге с контроллером, при запуске класс DatabaseServiceImpl не видит бин HeroRepository (Parameter 0 of constructor in main.service.DatabaseServiceImpl required a bean of type 'main.repos.HeroRepository' that could not be found), хотя он в соседнем пэкэдже, аннотации вроде-как правильно указал,
@Service
@Transactional
public class DatabaseServiceImpl implements DatabaseService{
—
@Repository
public interface HeroRepository extends JpaRepository<Hero,Long> {
—
@RestController
@RequestMapping("/api/hero")
public class Api {
private final DatabaseService service;
// @Autowired
Api(DatabaseService service){
this.service = service;
}
—
Но ошибка все проявляется, в мануалах код практически идентичный, может структура проекта неправильная?
https://github.com/Traums/SpringWeb/tree/master/src/main
Не надо кросспостить. Да, первое что бросается в глаза это Autowired лишний
Parameter 0 of constructor in main.service.DatabaseServiceImpl required a bean of type 'main.repos.HeroRepository' that could not be found. Action: Consider defining a bean of type 'main.repos.HeroRepository' in your configuration.
насколько я помню надо спрингу сказать где сканировать бины
Тебе нужно добавить аннотацию @EnableJpaRepositories(basePackages = {"main.repos"}) на класс App что бы репозитории нашлись. Но у тебя в проекте есть еще проблемы
Похоже что помогло, спасибо! Правда вывалилось: Error processing condition on org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration.propertySourcesPlaceholderConfigurer Видимо я неправильно запускаю действительно
@Repository зачем над интерфейсом висит ?
В мануале было, думал так надо
скачал проект и запустил. Возможно ошибка в том что хибернейт(5.4.24) который ты подключил использует старую спецификацию jpa(javax) который не совместим с spring-data-jpa(3.1.3) который использует jakarta
а как правильно надо?
а ты не ленивый 😌
подключи spring-boot-starter-jpa и не не беспокойся о dependency management
И в случае спринг бута можешь опустить @EnableJpaRepositories так как бут сам все накрутит со своей авто конфигурацией
Обсуждают сегодня