如何使用 maven-assembly-plugin 版本 3 设置最终 jar 名称
How to set final jar name with maven-assembly-plugin version 3
在旧版本的插件中,您可以使用 <finalName>
,但不再存在。
目前我正在获取 projectName-version-jar-with-dependencies.jar 并且最好更改它。
finalName
参数是在项目构建部分而不是插件配置中设置的。
所以基本上:
<build>
<finalName>xyz</finalName>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
....
</plugin>
</plugins>
</build>
程序集插件通过读取 属性 ${project.build.finalName}
获得最终名称,并且是一个只读参数。
在多模块项目中,我在每个模块中创建了程序集。为了更改名称,我使用了一个名为 'assembly' 的新子模块,并将所有单个模块程序集收集到一个新目录中。此时,您可以更改输出名称。我正在关注此常见问题 https://maven.apache.org/plugins/maven-assembly-plugin/faq.html#module-binaries
我的最终组装(所有模块组装的集合看起来像这样):
<assembly>
<id>final</id>
<formats>
<format>dir</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<moduleSets>
<moduleSet>
<useAllReactorProjects>true</useAllReactorProjects>
<binaries>
<attachmentClassifier>jar-with-dependencies</attachmentClassifier>
<outputDirectory>dist/${module.artifactId}</outputDirectory>
<unpack>false</unpack>
<includeDependencies>false</includeDependencies>
</binaries>
</moduleSet>
</modulesSets>
</assembly>
这应该只允许您更改程序集文件的工件名称。
在旧版本的插件中,您可以使用 <finalName>
,但不再存在。
目前我正在获取 projectName-version-jar-with-dependencies.jar 并且最好更改它。
finalName
参数是在项目构建部分而不是插件配置中设置的。
所以基本上:
<build>
<finalName>xyz</finalName>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
....
</plugin>
</plugins>
</build>
程序集插件通过读取 属性 ${project.build.finalName}
获得最终名称,并且是一个只读参数。
在多模块项目中,我在每个模块中创建了程序集。为了更改名称,我使用了一个名为 'assembly' 的新子模块,并将所有单个模块程序集收集到一个新目录中。此时,您可以更改输出名称。我正在关注此常见问题 https://maven.apache.org/plugins/maven-assembly-plugin/faq.html#module-binaries
我的最终组装(所有模块组装的集合看起来像这样):
<assembly>
<id>final</id>
<formats>
<format>dir</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<moduleSets>
<moduleSet>
<useAllReactorProjects>true</useAllReactorProjects>
<binaries>
<attachmentClassifier>jar-with-dependencies</attachmentClassifier>
<outputDirectory>dist/${module.artifactId}</outputDirectory>
<unpack>false</unpack>
<includeDependencies>false</includeDependencies>
</binaries>
</moduleSet>
</modulesSets>
</assembly>
这应该只允许您更改程序集文件的工件名称。