잠재적으로 할 수 있습니다.
일반적으로 Tomcat의 버전과 런타임 환경에 의존하는 경우 다음과 같이 종속 항목의 범위를 "제공"해야합니다. 이는 필수적으로 다음과 같이 종속 항목이 패키지와 함께 패키지되지 않음을 의미합니다. 앱 :
<dependency>
<groupId>com.abc.xyz</groupId>
<artifactId>runtimepackage</artifactId>
<version>1.2.3</version>
<scope>provided</scope>
</dependency>
최근에 다른 버전의 부두에서이 문제가 발생했습니다. 그 런타임 환경에 배포 된 다른 패키지 부두 제
- 부두 6 서블릿 API 2.5을 사용한다 (어떤 메소드 호출 대해 getHeaders가 없다())
- 부두를 사용하면서 부두 6을 사용하고 규정 된 범위 하였다 한 패키지 도 8은 서블릿 API 3.0을 사용하여 (이있는 방법이라고 대해 getHeaders())
제 8 부두 (따라서 서블릿 API 3.0)를 사용하여 모듈 HttpServletRequest의 개체에서()를 호출 대해 getHeaders 하였다. 내가 로컬에서 뛰었을 때 모든 것이 잘되었다. 그러나 배치되고 getHeaders()가 호출되면 NoSuchMethod 예외가 트리거됩니다. 환경 설정과 일치하도록 내 로컬 설정을 변경하고 문제를 재현 할 수있었습니다.
희망과 도움이 되길 바랍니다.
어떤 종류의 충돌에 대해 이야기하고 있습니까? 좀 더 구체적으로 표현할 수 있습니까? – khmarbaise
버전 충돌에 대해 이야기하고 있습니다. –