我正在尝试从远程存储库导入我的Maven项目中的着色工件,以便使用不同的库版本,而不会发生冲突。
<repository>
<id>cdh.repo</id>
<url>https://repository.cloudera.com/artifactory/cloudera-repos</url>
<name>Cloudera Repository</name>
</repository>
所以在pom中我有了存储库和以下依赖项来引用着色的工件(cloudera-manager-api-5.8.1-shaded.jar):
<dependency>
<groupId>com.cloudera.api</groupId>
<artifactId>cloudera-manager-api</artifactId>
<version>5.8.1</version>
<classifier>shaded</classifier>
</dependency>
在.m2目录中,Maven下载了正确的库,但运行时出现错误,与阴影库有关。
如果删除分类器标签并更改pom和.m2目录中的版本(见下文),则可以正常工作。
<dependency>
<groupId>com.cloudera.api</groupId>
<artifactId>cloudera-manager-api</artifactId>
<version>5.8.1-shaded</version>
</dependency>
.m2目录:
-com
-cloudera
-api
-cloudera-manager-api
-5.8.1-shaded
-(the library) cloudera-manager-api-5.6.1-shaded.jar
您是否知道此行为的原因以及如何在没有问题且没有上次手动更改的情况下使用着色的工件?