2017-10-31 5 views
0

나는 Spring Framework에서 애플리케이션을 빌드하고, Maven으로 빌드하고, EAR로 패키징하고이를 Weblogic 11g에 전개한다. 모든 것이 잘 작동합니다.java.lang.ClassNotFoundException : org.springframework.security.oauth2.client.token.AccessTokenRequest on Weblogic 12c

그러나 Weblogic 12c에 동일한 패키지를 배포하려고하면 다음과 같은 예외가 발생합니다.

java.lang.ClassNotFoundException: org.springframework.security.oauth2.client.token.AccessTokenRequest 

왜 Weblogic 버전 업그레이드가이 클래스에 대한 종속성을 도입합니까? 종속성은 EAR에도 패키지되어 있지 않습니다.

나는 그것이 토큰 사용이 종속성과 함께 할 수있는 뭔가 기반 인증

<dependency> 
    <groupId>com.auth0</groupId> 
    <artifactId>java-jwt</artifactId> 
    <version>2.2.0</version> 
</dependency> 

문제가 무엇이며, 체계적으로 문제의이 종류를 진단하는 가장 좋은 워크 플로우는 일반적으로 무엇인가가 있다고 생각?

+0

'spring-security-oauth2' 패키지가 누락되었다고 생각합니다. – Sridhar

+0

그래서 실제로는 웹 로직 버전입니다. 12c에서 상충되는 항아리 일 수 있습니까? 아니면 뭔가 빠졌을까요? 여전히 pom을 첨부하면이 문제를 해결하는 데 도움이 될 수 있습니다. – pirho

답변

0

ClassNotFound는 프로젝트에 직접 또는 간접적 인 종속성이 없음을 의미합니다. https://mvnrepository.com/artifact/org.springframework.security/spring-security-jwt/1.0.0.RELEASE 그래서

당신이 당신의 치어의 종속성을 추가 org.springframework.security.oauth2.client.token.AccessTokenRequest 받는다는 의존성

그리고 첫 번째 링크되어 해결하는 쉬운 방법은 ClassNotFoundException가 구글이다 파일.

라이브러리의 두 버전이 충돌하는 경우 더 복잡한 경우가 있으며 필요한 정확히 버전을 파악해야합니다.

+0

이것은 분명합니다. 그러나 나는이 의존성에 대한 필요성이 나타나는 이유에 관심이 있습니다. 분명히 Spring 프레임 워크와 Weblogic 12 통합의 버그이며 Spring 프레임 워크 라이브러리를 업데이트하여 해결해야합니다. 이 라이브러리가 실제로 필요하지 않습니다. https://stackoverflow.com/questions/43767211/spring-boot-eclipse-weblogic-12-2-1. 일반적으로 이런 종류의 문제를 어떻게 추적합니까? –

+0

유일한 방법은 라이브러리를 조사하고 클래스를로드하려고하는 이유를 알아내는 것입니다. 그러나 스프링 기여자가되어 모든 내부 논리를 이해하는 것은 간단하지 않습니다. – StanislavL

관련 문제