2016-12-08 5 views
2

У меня проблема с весенними ботинками относительно репозиториев. У меня есть сервис:Весенний ботинок CrudRepo Определить фасоль

@Service("userService") 
public class UserServiceImpl implements UserService { 

    @Autowired 
    private UserRepository userRepository; 

    @Autowired 
    private RoleRepository roleRepository; 
} 

и сделок РЕПО здесь:

@Repository("userRepository") 
public interface UserRepository extends CrudRepository<User, Long> { 
    User findByEmail(String email); 
} 

Когда я запустить приложение, я получаю это сообщение:

Description: 

Field userRepository in com.projectWS.service.UserServiceImpl required a 
bean of type 'com.projectWS.repo.UserRepository' that could not be found. 

Action: 

Consider defining a bean of type 'com.projectWS.repo.UserRepository' in your 
configuration. 

Пожалуйста, помогите мне, я так отчаянно ... это мой главный класс:

@SpringBootApplication 
@Configuration 
@EnableWebMvc 
public class Main { 

    public static void main(String[] args) { 
    SpringApplication.run(Main.class, args); 
    } 
} 

Другая проблема: @EnableJpaRepositories не узнается !!

+0

Что значит «не узнается»? Похоже, что вы не включили зависимость от Spring Data JPA. (И предпочитайте инъекцию конструктора для инъекции поля всякий раз, когда это возможно.) – chrylis

+0

Я пробовал всевозможные зависимости в моем pom.xml ... Я не понимаю вещи между паранетами. Пожалуйста, помогите мне. Я новичок в этой весенней вечеринке. –

ответ

3

, скорее всего, ваш Main класс определен в пакете и другие ваши пакеты не проверяется.

Try аннотация ваш Main класса с:

@ComponentScan("com.projectWS") 

судя по вашему сообщению об ошибке, и при условии, что верхняя части вашего уровня пакета начинается com.projectWS

+0

Спасибо !!! Я на самом деле сделал это @ComponentScan («com.projectWS. *») И работал как Шарм –

0

Я не эксперт по весне, но я подозреваю, что это может быть из-за случая с именами этих классов. Просто для душевного спокойствия теста это пожалуйста:

@Service("userService") 
public class UserServiceImpl implements UserService { 

    @Qualifier("userRepository") 
    @Autowired 
    private UserRepository userRepository; 

    @Qualifier("roleRepository") 
    @Autowired 
    private RoleRepository roleRepository; 
} 
+0

уже пробовал ... не работает: '( –

0

Похоже, вы не добавили данные пружину для JPA , добавьте следующее к вашему pom.xml

<dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-data-jpa</artifactId> 
    </dependency> 
Смежные вопросы