我想生成一个 zip 文件,它将使用 maven 更新应用程序。 zip 将托管在服务器上,我正在使用程序集插件生成 zip。但是我希望 maven 自动生成一个文本文件,将当前版本号存储在 zip 之外。这怎么可能?
编辑:我成功地使用 maven Assembly Plugin 和两个描述符创建了两个自定义程序集。一个有一个目录单一目标,它只是创建一个文件夹,其中包含基于过滤的更新 version.txt。然后另一个只有一个目标的实际上打包了 zip 文件。这似乎非常不雅,我猜它不会用整个更新的文件夹正确更新 Maven 存储库。如果有更好的方法来做到这一点,请告诉我。
原文由 sanz 发布,翻译遵循 CC BY-SA 4.0 许可协议
当然。在 src/main/resources 的某处创建一个文本文件,将其命名为
version.txt
(或其他名称)文件内容:
现在在你的 pom.xml 中,在 build 元素内,放置这个块:
每次构建后,文件(您可以在目标/类中找到)将包含当前版本。
现在,如果您想自动将文件移动到其他地方,您可能需要通过 maven-antrun-plugin 执行一个 ant 任务。
是这样的: