我有一个带有几个模块(jars & ejb)的Java 6 EAR项目。将ear文件与maven-ear-plugin组装在一起,我基本上希望所有工件都打包/未爆:
来自父文件的pom.xml:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-ear-plugin</artifactId>
<version>2.5</version>
<inherited>true</inherited>
<configuration>
<encoding>UTF-8</encoding>
<version>5</version>
<generateApplicationXml>true</generateApplicationXml>
<defaultLibBundleDir>lib</defaultLibBundleDir>
<archive>
<manifestEntries>
<app-version-info>${app-version-info}</app-version-info>
</manifestEntries>
</archive>
</configuration>
</plugin>来自ear文件的pom.xml:
<build>
<plugins>
<plugin>
<artifactId>maven-ear-plugin</artifactId>
<version>2.5</version>
<configuration>
<finalName>heap-poc</finalName>
<modules>
<jarModule>
<groupId>com.example.heap</groupId>
<artifactId>poc-common</artifactId>
<bundleFileName>poc-common.jar</bundleFileName>
<unpack>true</unpack>
<includeInApplicationXml>true</includeInApplicationXml>
</jarModule>
<jarModule>
<groupId>com.example.heap</groupId>
<artifactId>poc-persistence</artifactId>
<bundleFileName>poc-persistence.jar</bundleFileName>
<includeInApplicationXml>true</includeInApplicationXml>
</jarModule>
<ejbModule>
<groupId>com.example.heap</groupId>
<artifactId>poc-business</artifactId>
<unpack>false</unpack>
<bundleFileName>poc-business.jar</bundleFileName>
</ejbModule>
</modules>
</configuration>
</plugin>
</plugins>
</build>问题是,描述解包开关似乎完全被忽略了:
我正在使用Eclipse / m2eclipse,但据我理解,这对问题并不重要。
有人能把我推向正确的方向吗?
发布于 2011-08-15 08:29:00
我认为Eclipse不是问题的罪魁祸首,这是错误的。事实上,命令行中的maven完成了它应该做的事情,它“只是”m2-eclipse和jboss的相当复杂的集成,而这些工具似乎忽略了所涉及的设置。
mvn package确实做了它应该做的事情:-)
用了整整一周的时间将基于ant的Java 5项目迁移到maven和Java 6,这教会了我在Eclipse中JBoss上的Maven与命令行上的Maven有很大的不同。
https://stackoverflow.com/questions/5564154
复制相似问题