问题描述
我一直在使用EAR插件来打包WAR,EJB和RAR模块,尽管当我运行mvn clean package
时它们都成功打包了,但我注意到以下内容在目标目录中得到输出。
- application.xml(生成的application.xml)
- my-application-ear-1.0-SNAPSHOT(具有正确打包的WAR,EJB和RAR依赖关系的目录,带有生成的application.xml的META-INF以及EAR项目的其他资源)
- my-application-ear-1.0-SNAPSHOT.ear(9kb的.ear文件,只有META-INF以及生成的application.xml和EAR项目的其他资源)
最终的EAR文件中没有打包任何模块。
这是EAR项目的POM的<build>
节点。
<build>
<plugins>
<plugin>
<artifactId>maven-ear-plugin</artifactId>
<version>3.0.2</version>
<configuration>
<finalName>my-application-ear</finalName>
<version>7</version>
<earSourceDirectory>src/main/application</earSourceDirectory>
<packagingIncludes>**/*</packagingIncludes>
<defaultLibBundleDir>lib</defaultLibBundleDir>
<filtering>false</filtering>
<packagingIncludes>Default_HTTP_WC/**,Default_IIOP_WC/**,Default_JMS_WC/**,META-INF/**,</packagingIncludes>
<modules>
<ejbModule>
<groupId>com.abc.def</groupId>
<artifactId>ejb-module</artifactId>
<bundleDir>/</bundleDir>
<bundleFileName>ejbModule.jar</bundleFileName>
<moduleId>EjbModule_1</moduleId>
</ejbModule>
<rarModule>
<groupId>com.abc.def</groupId>
<artifactId>rar-module</artifactId>
<bundleDir>/</bundleDir>
<bundleFileName>RARModule</bundleFileName>
<uri>/RARModule.rar</uri>
<unpack>true</unpack>
<moduleId>RARModule_1</moduleId>
</rarModule>
<webModule>
<groupId>com.abc.def</groupId>
<artifactId>my-web-app</artifactId>
<uri>/WebApplication.war</uri>
<bundleDir>/</bundleDir>
<bundleFileName>WebApplication.war</bundleFileName>
<contextRoot>/foo</contextRoot>
<moduleId>WebModule_1</moduleId>
</webModule>
</modules>
</configuration>
<goals>
<goal>ear</goal>
</goals>
</plugin>
</plugins>
我想念什么吗?感谢您的协助。
解决方法
我发现了自己的问题,从上一个迭代开始,我完全忽略了<packagingIncludes>
的使用。并删除了它。