일부 레거시 코드를 새 버전으로 이식하는 중입니다. 1.5x 버전이 1.6x 및 1.7x와 호환되지 않는 특정 모듈 (slf4j)은 내 프로젝트가 의존하는 프로젝트가 클래스 패스에 jar로 포함되어 있습니다. 이러한 문제를 해결할 수있는 방법이 있습니까?maven에서 전이 종속성 제거
답변
가있는 경우 치어 메이븐에서 직접 의존성이 그것을 사용하고 동일한 유물에 어떤 이적 종속성을 생략 할 것이다 예를 들어 여기
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-core</artifactId>
<version>2.12.1</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
</dependency>
낙타 코어가있는 전이 의존성 SLF4J-API-1.6.6하지만, Maven은 slf4j-api-1.7.5를 선택할 것입니다.
이게 옳은지 확실하지 않습니다. 동일한 시도했습니다. 내 프로젝트 POM에 slf4j의 최신 버전이 추가되었습니다. 여전히 호환성 문제가 발생합니다. 이것은 sl4j의 경우 일 수도 있지만 확실하게 말할 수는 없습니다. – user1801279
Eclipse에서 쉽게 확인할 수 있습니다. "dependency hierarchy"탭 –
옙 mvn dependency : 트리는 프로젝트에 새 버전을 연결 했더라도 의존성이 여전히 어떻게 몰래 움직 였는지 추론하는 데 사용되었습니다. – user1801279
내 문제를 해결하는 방법은 내 프로젝트가 의존하는 프로젝트를 재배포하는 것입니다. 항아리 였기 때문에 필자는 그것을 maven 형식으로 다시 만들고 그 수준에서 모든 전이 의존성을 막기 위해 필요한 제외 구문을 추가해야했습니다. 이것은 모범 사례는 아니지만 제 경우에는 효과가있을 수 있습니다. 나는 프로젝트의 최신 버전이 모든 maven 기반의 제외 태그로 충분해야한다고 생각한다.
- 1. Maven에서 충돌하는 전이 의존성이 심각한 문제입니까?
- 2. Maven 플러그인의 전이 종속성
- 3. 전이 테스트 종속성 및 Maven 종속성 사이클
- 4. 전이 종속성 제외 작동하지 않음
- 5. Maven에서 종속성 저장소를 지정하는 방법
- 6. maven을 사용하여 테스트 범위에서 직접 종속성 및 전이 종속성
- 7. 내 플러그인 내에서 Maven 2와의 전이 종속성
- 8. 개미, 담쟁이, 여러 프로젝트 및 전이 종속성
- 9. 조롱 된 객체 전이 종속성 무시
- 10. Maven에서 특정 종속성의 전이 종속성을 어떻게 제외시킬 수 있습니까?
- 11. 종속성 artifactId로 대체하여 Maven에서 리소스를 필터링하는 방법?
- 12. Maven에서 "제공"되는 범위와의 "선택적"종속성
- 13. Maven. 전이 의존성
- 14. 전이
- 15. Maven에서 특정 이슈/아티팩트 그룹을 종속성에서 제거합니다. 종속성 - 복사 결과
- 16. 링커 종속성 제거
- 17. 스칼라 REPL 종속성 제거
- 18. 배포 가능한 종속성 제거
- 19. 생성자에서 종속성 제거
- 20. 자바에서 클래스 종속성 제거
- 21. POM에서 불필요한 종속성 제거
- 22. maven 종속성 중복 제거
- 23. Maven에서 코드에서 전이 의존성 사용을 허용하지 않고 classpath에 그대로 둘 수 있습니까?
- 24. Archetype 프로젝트의 ArtifactId Maven에서 특수 문자 제거
- 25. Maven 모범 사례 : 명시 적 하위 종속성 대 전이
- 26. 비 전이 종속성 목록 (GCC)을 만드는 방법
- 27. 어셈블리 코드에서 스택 종속성 제거
- 28. Websphere의 공유 라이브러리 종속성 제거
- 29. 유닛 테스트에 대한 종속성 제거
- 30. MVC의 컨트롤러 생성자에서 종속성 제거
그래서 프로젝트는 SLF4J의 1.5.x 버전에 달려있다. 그 맞습니까? – Vidya
예, 1.5x와 역 호환되지 않는 1.6x 및 1.7x 버전을 사용할 계획입니다. 내가 (작업중인 프로젝트의) 전쟁을 할 때마다 전 이적 종속성으로 인해 사용되는 다른 버전으로 인해 존재하는 비 호환성으로 인해 실패합니다. – user1801279