我的项目中有以下两个依赖项:
<dependency>
<groupId>com.google.javascript</groupId>
<artifactId>closure-compiler</artifactId>
<version>v20141215</version>
<exclusions>
<exclusion>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
<version>2.4.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
正如您在依赖关系树中看到的,它们都包含不同版本的Guava:
[INFO] --- maven-dependency-plugin:2.1:tree (default-cli) @ extraction ---
[INFO] +- com.google.javascript:closure-compiler:jar:v20141215:compile
[INFO] | +- com.google.javascript:closure-compiler-externs:jar:v20141215:compile
[INFO] | +- args4j:args4j:jar:2.0.26:compile
[INFO] | +- com.google.guava:guava:jar:18.0:compile
[INFO] | +- com.google.code.gson:gson:jar:2.2.4:compile
[INFO] | \- com.google.code.findbugs:jsr305:jar:1.3.9:compile
[INFO] +- org.apache.hadoop:hadoop-common:jar:2.4.0:compile
[INFO] | +- org.apache.hadoop:hadoop-annotations:jar:2.4.0:compile
[INFO] | | \- jdk.tools:jdk.tools:jar:1.7:system
[INFO] | +- (com.google.guava:guava:jar:11.0.2:compile - omitted for conflict with 18.0)
[INFO] | +- ...
Run Code Online (Sandbox Code Playgroud)
众所周知的问题是番石榴不向后兼容.因此我需要两个罐子.
错误 - 我得到 - 如下: …