我目前正在使用maven-ear-plugin
构建和使用EAR文件我要求从MANIFEST.MF文件中排除一些Class-Path:条目。
例如,我的类路径中有3个依赖项hibernate-core.jar,quartz-1.6.5.jar和poi-3.7.jar(在我的pom.xml的依赖项中)
当我构建我的EAR文件时,所有这些条目将自动添加到我的MANIFEST.MF文件的Class-Path条目中。
我的maven构建如下
<build>
<finalName>MyEAR</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-ear-plugin</artifactId>
<configuration>
<archive>
<addMavenDescriptor>false</addMavenDescriptor>
<manifest>
<addClasspath>true</addClasspath>
<addExtensions />
<classpathPrefix />
</manifest>
<manifestFile>src/main/resources/META-INF/MANIFEST.MF </manifestFile>
</archive>
.....
.....
</configuration>
</plugin>
</plugins>
</build>
在上面的构建文件中
<addClasspath>true</addClasspath>
负责添加MANIFEST.MF条目。
我的要求是在依赖石英-1.6.5.jar和poi-3.7.jar中只添加2个罐子,并且要求重新使用。
如果我给出false,则所有条目都从MANIFEST.MF类路径中排除。 如果从pom中删除depependecy条目,我会收到编译错误。
如何实现上述情况。
感谢,
答案 0 :(得分:1)
将范围“提供”添加到不需要的依赖项:
<dependency>
<groupId>...</groupId>
<artifactId>...</artifactId>
<version>..</version>
<scope>provided</scope>
</dependency>