我在我的应用程序的pom.xml中使用Jar文件作为依赖项。不幸的是,这个jar中有一个pom.xml和pom.properties文件,而我的maven应用程序正在尝试下载这些文件中存在的额外工件。
您能否告诉我如何排除这些文件或停止寻找额外的工件。
示例:我正在添加abc.jar
<dependency>
<groupId>xyz</groupId>
<artifactId>abc</artifactId>
<version>1</version>
</dependency>
现在“abc.jar”有自己的pom.xml,其中存在一个工件,如下所示
<parent>
<groupId>DEFGH</groupId>
<artifactId>NewArtifact</artifactId>
<version>1</version>
</parent>
注意:我尝试使用“依赖”标签下的“排除”,但没有用。
答案 0 :(得分:1)
看一下这个片段:
<dependency>
<groupId>org.squirrelframework</groupId>
<artifactId>squirrel-foundation</artifactId>
<version>0.3.2</version>
<!-- explicitly disable squirrel-foundation dependency because it messes up project logging backend configuration -->
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
<exclusion>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</exclusion>
</exclusions>
</dependency>
在这个片段中,我明确地删除了对log4j和slf4j-log4j12的依赖关系以及squirrel-foundation
包。
如果你可以控制依赖jar的构建过程,你可以使用this recipe从jar中完全排除pom.xml和pom.properties,但我怀疑这是一个很好的解决方案。以某种其他方式处理额外的依赖关系会更正确