Ban*_*ani 44 java ear maven-2 build maven-ear-plugin
我在maven有一个包含5个模块的项目.现在,当我进行"mvn clean install"时,它会生成一个包含两个罐子的耳朵,一个战争和一个来自其他模块的sar.
所有文件名都包含版本,例如projectx-ear-2.0.0.ear,projectx-client-2.0.0.jar等.
我需要重命名其中一个罐子和最后一个耳朵以省略文件名中的版本.它应该如下所示:
projectx-ear.ear
|
+-- projectx-client.jar
|
+-- projectx-misc-2.0.0.jar
|
+-- projectx-sar-2.0.0.sar
|
\-- projectx-web-2.0.0.web
Run Code Online (Sandbox Code Playgroud)
现在我正在使用以下插件来构建:maven-compiler-plugin和maven-release-plugin
实现我期望的结果的最佳方法是什么?
Pét*_*rök 97
您可以通过finalName在pom中指定属性来实现此目的:
<build>
<finalName>${project.artifactId}</finalName>
</build>
Run Code Online (Sandbox Code Playgroud)
Pas*_*ent 21
在您的ear模块中,您可以使用该project.build.finalName元素,也可以配置支持可选参数的maven-ear-pluginfinalName.要配置捆绑jar的最终名称,您需要定义一个jarModule并为其设置bundleFileName属性.
最终配置可能看起来像这样(我将演示如何在插件配置中设置最终的耳朵名称):
<project>
[...]
<dependencies>
<dependency>
<groupId>yourgroupid</groupId>
<artifactId>projectx-client</artifactId>
<version>2.0.0</version><!-- not mandatory if inherited -->
</dependency>
[...]
</dependencies>
[...]
<build>
[...]
<plugins>
[...]
<plugin>
<artifactId>maven-ear-plugin</artifactId>
<version>2.4</version>
<configuration>
<finalName>projectx-ear</finalName>
<modules>
<jarModule>
<groupId>yourgroupid</groupId>
<artifactId>projectx-client</artifactId>
<bundleFileName>anotherName.jar</bundleFileName>
</jarModule>
</modules>
</configuration>
</plugin>
[...]
</project>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
44658 次 |
| 最近记录: |