在我的项目中,jersey-core从许多依赖项中拉取。我不知道哪一个。我相信这并不重要,因为我认为如果多个依赖关系拉同一个,那么gradle总是会采用更高的版本。我错了。Gradle拉依赖关系时的版本冲突
[ERROR] [main] [n/a] org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/] - StandardWrapper.Throwable
java.lang.NoSuchMethodError: com.sun.jersey.core.reflection.ReflectionHelper.getContextClassLoaderPA()Ljava/security/PrivilegedAction;
at com.sun.jersey.spi.scanning.AnnotationScannerListener.<init>(AnnotationScannerListener.java:94) ~[jersey-server-1.19.jar:1.19]
AnnotationScannerListener为1.19,ReflectionHelper是1.1和方法getContextClassLoaderPA()不存在ReflectionHelper 1.1
我怎么能强迫gradle这个总是拿更高版本?
我使用intellij。
不确定正确的语法,但通常你会通过手动排除传递依赖关系来做类似的事情。 https://docs.gradle.org/current/userguide/dependency_management.html#sub:exclude_transitive_dependencies –