我正在使用maven war插件来排除一些常见的jar并将它们放在类路径中。我能够正确生成war文件,它排除了指定的lib并将它们添加到类路径中,但是爆炸的war目录仍然包含排除的libararies。如何生成使用maven war插件配置的爆炸war文件。
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.ekaplus.ctrm.mdm</groupId>
<artifactId>core-presentation</artifactId>
<version>1.0</version>
<packaging>war</packaging>
<name>presentation layer core</name>
<dependencies>
<dependency>
<groupId>com.ekaplus.ctrm.mdm</groupId>
<artifactId>eka-core-mdm-presentation</artifactId>
<version>1.0</version>
<scope>compile</scope>
</dependency>
</dependencies>
<profiles>
<profile>
<id>exploded</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<defaultGoal>package</defaultGoal>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1</version>
<configuration>
<packagingExcludes>
WEB-INF/lib/dto-common-1.0.jar,
WEB-INF/lib/eka-action-1.0.jar
</packagingExcludes>
<archive>
<manifest>
<addClasspath>true</addClasspath>
</manifest>
</archive>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
答案 0 :(得分:3)
(...)如何生成使用maven war插件配置的爆炸war文件。
war:exploded
目标确实使用了maven war插件的(全局)配置,但它不接受war:war
的{{3}}参数。这不起作用。
但是为什么你还在使用packagingExcludes
呢?这个参数应该用于实现非常特殊的瘦战争用例,我不确定这是你的情况。你为什么需要它?
根据您的确切需求,我的建议是使用依赖范围(在您的情况下为provided
?)或配置文件(添加依赖项)或两者的组合。