繁体   English   中英

Maven配置将项目版本放在war文件中的文件名上,以“ unzip -l app.war”读取

[英]Maven config to put project version on a file name inside war file to read with 'unzip -l app.war'

如何配置我的pom文件,以便maven自动构建包含使用项目版本号(例如version-3.1.2.txt)命名的文件的战争?

这是为了在部署期间易于使用。

由于种种原因,我无法将战争文件命名为MyApp-3.1.2.war。

如果那不可能,我将不得不将版本号写入清单中, 如何将Maven项目版本放入war文件清单中? 并找出要解压缩,读取和处理清单文件的linux cmd。

您可以执行以下操作:

<build>
    <plugins>
        <plugin>
            <artifactId>maven-antrun-plugin</artifactId>
            <executions>
                <execution>
                    <goals>
                        <goal>run</goal>
                    </goals>
                    <phase>prepare-package</phase>
                    <configuration>
                        <tasks>
                            <mkdir dir="${project.build.directory}/${project.build.finalName}" />
                            <touch file="${project.build.directory}/${project.build.finalName}/version-${project.version}.txt" />
                        </tasks>
                    </configuration>                        
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

我已经在GitHub上创建了一个工作示例: https : //github.com/StefanHeimberg/stackoverflow-27963488

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM