Maven 2 maven使用同一个jar的两个版本进行战争
Maven将axis-1.3.jar和axis-1.4.jar放在我的war的WEB-INF/lib中。 有人能解释一下如何告诉它只使用axis-1.4.jar吗Maven 2 maven使用同一个jar的两个版本进行战争,maven-2,war,Maven 2,War,Maven将axis-1.3.jar和axis-1.4.jar放在我的war的WEB-INF/lib中。 有人能解释一下如何告诉它只使用axis-1.4.jar吗 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http:/
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent>
<groupId>dummy</groupId>
<artifactId>test-war</artifactId>
<version>0.1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>dummy</groupId>
<artifactId>war-part2</artifactId>
<name>war-part1</name>
<version>0.1</version>
<packaging>war</packaging>
<dependencies>
<dependency>
<groupId>org.apache.axis</groupId>
<artifactId>axis</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>com.jaspersoft.jasperserver</groupId>
<artifactId>jasperserver-ireport-plugin</artifactId>
<version>2.0.1</version>
</dependency>
</dependencies>
</project>
Maven is 2.2.1您可以在依赖项中排除某些依赖库:
<dependency>
<groupId>com.jaspersoft.jasperserver</groupId>
<artifactId>jasperserver-ireport-plugin</artifactId>
<version>2.0.1</version>
<exclusions>
<exclusion>
<groupId>axis</groupId>
<artifactId>axis</artifactId>
</exclusion>
</exclusions>
</dependency>
com.jaspersoft.jasperserver
jasperserver ireport插件
2.0.1
轴
轴
然后maven将跳过这个依赖项
不过,您必须确保Jasper可以在您提供的库中找到所需的类。这在工作中经常出现,90%的时间是由于有人(
或Eclipse的WTP
)将jar的副本放入WEB-INF/lib
中,然后将其检查到版本控制中
您可能需要对此进行检查。理论上,Maven应该处理依赖项或可传递依赖项中存在的工件版本的收敛。这里的问题是,
axis-1.4.jar
和axis-1.3.jar
没有相同的groupId
(org.apache.axis
vsaxis
),因此Maven将它们视为不同的工件,并将它们都包括在内
如果您不想获得axis-1.3.jar,而只想获得axis-1.4.jar,则必须使用排除
明确地从jasperserver ireport插件
中排除不需要的依赖项:
<dependency>
<groupId>com.jaspersoft.jasperserver</groupId>
<artifactId>jasperserver-ireport-plugin</artifactId>
<version>2.0.1</version>
<exclusions>
<exclusion>
<groupId>axis</groupId>
<artifactId>axis</artifactId>
</exclusion>
</exclusions>
</dependency>
com.jaspersoft.jasperserver
jasperserver ireport插件
2.0.1
轴
轴
虽然不能说jasperserver ireport插件是否能与axis-1.4.jar一起工作。fwiw我已经在maven上工作了几个小时,因为我的war中有同一个jar的其他版本-在执行递归删除时一定要小心,但这就是最终清除它的原因
rm -fR ~/.m2/repository
mvn -U clean package
我的回购协议有些古怪,但不管它是什么,它总是回来,直到我做了武力更新-U
希望这对某人有所帮助这就是我的答案!谢谢
rm -fR ~/.m2/repository
mvn -U clean package