여러 가지 이유로 스프링 부트 1.2.0 RC2를 사용했다. 그래서 spring boot1.1.8에서 잘 작동하는 스프링 데이터 몽고 애플리케이션은 현재 문제가 있습니다. 스프링 부트 1.2.0 RC2에 대한 범프를 제외하고 코드가 변경되지 않았습니다. 이것은 봄철 버전의 스냅 샷 버전 인 스프링 클라우드 때문입니다. 이 버전의 범프 전에 꽤 잘 작동Spring 데이터의 클래스에 대한 Autowiring 문제 Mongo 저장소
@Repository
public interface OAuth2AccessTokenRepository extends MongoRepository<OAuth2AuthenticationAccessToken, String> {
public OAuth2AuthenticationAccessToken findByTokenId(String tokenId);
public OAuth2AuthenticationAccessToken findByRefreshToken(String refreshToken);
public OAuth2AuthenticationAccessToken findByAuthenticationId(String authenticationId);
public List<OAuth2AuthenticationAccessToken> findByClientIdAndUserName(String clientId, String userName);
public List<OAuth2AuthenticationAccessToken> findByClientId(String clientId);
}
다음과 지금은 로그에서 볼로
저장소 클래스입니다.
19:04:35.510 [main] DEBUG o.s.c.a.ClassPathBeanDefinitionScanner - Ignored because not a concrete top-level class: file [/Users/larrymitchell/rpilprojects/corerpilservicescomponents/channelMap/target/classes/com/cisco/services/rpil/mongo/repository/oauth2/OAuth2AccessTokenRepository.class]
내가 인식 다른 몽고 저장소를 할 수 있지만이 하나 (내가 또 다른 문제에 대한 해결 방법으로 구현 클래스로 정의 인식
@Component
public class ChannelMapRepository { ... }
클래스 구현으로 정의 I 했다). 이 클래스는 인정되어 잘 작동하는 것 같습니다.
19:04:35.513 [main] DEBUG o.s.c.a.ClassPathBeanDefinitionScanner - Identified candidate component class: file [/Users/larrymitchell/rpilprojects/corerpilservicescomponents/channelMap/target/classes/com/cisco/services/rpil/services/Microservice.class]
누구나 이유가 있습니까? 구성 요소 검색이 작동하지 않는 이유에 대한 여러 가지 이유를 들여다 보았습니다.
예상대로 작동하며 메시지가 원인을 알려줍니다. 인터페이스는 인터페이스이며 구성 요소 검색으로는 감지되지 않으며 이전 버전에서는 없었습니다. 인터페이스 1은 Spring Data MongoDB에 의해 감지되고 동작은 그것에 의해 추가됩니다. –
명시된 바와 같이, 코드의 유일한 차이점은 스프링 부트의 버전이 변경된다는 것입니다. 코드가 변경되기 전에 정상적으로 작동했습니다. 그의 가이드를 보면 저장소를 인터페이스로 정의하는 것이 허용 된 방법이라는 것을 알 수 있습니다. 구현 클래스는 스프링 데이터로 생성됩니다. http://spring.io/guides/gs/accessing-data-mongodb/ – EvilJinious1
내가 말한 것은 ... 당신은 스프링 부트를 사용하고 있으므로 스프링 부트를 사용하고 있는지 확인하십시오 종속성을 관리하려면 Spring Boot 스타터를 사용하여 종속성을 끌어 내십시오 (예 :이 경우에는 'spring-boot-startter-data-mongodb'). pom을 추가하여 거기에 무엇이 빠졌는지 (또는 없는지) 확인하십시오. –