【问题标题】:maven: Removing format file extension from created assemblymaven:从创建的程序集中删除格式文件扩展名
【发布时间】:2011-04-09 16:40:40
【问题描述】:

我有一个 Maven2 项目,我在其中使用程序集插件。如果创建的程序集文件名不以格式扩展名结尾(例如“.zip”),一切都会好起来的。我在插件配置中指定了一个 fileName 参数并将 appendAssemblyId 设置为 false。我已经在这个问题上花了几个小时......有什么想法吗?

【问题讨论】:

标签: file maven-2 maven-assembly-plugin


【解决方案1】:

我的回答有点不靠谱——不要删除格式扩展名。如果您在程序集描述符中使用特定的<format> 来生成工件(zip、tar.gz 等),则没有充分的理由从文件中删除扩展名。如果我是您的软件的用户并下载了这个二进制文件,我不想猜测打包类型是什么,我应该能够通过查看文件名来判断。

FWIW,将 appendAssemblyId 设置为 false 意味着您的程序集描述符的 <id> 将不会包含在您的文件名中。

现在,如果你真的决心让这对你和其他人来说都是一种痛苦,那么你可能想要做的(就像人们想让 maven 做的大多数荒谬的事情一样)是使用 antrun plugin 来在 maven 调用期间重命名生成的文件,或者只是在 maven 进程完成后运行一个 shell 脚本来重命名它。

【讨论】:

  • 嗯...我需要从文件中删除“.zip”,因为我正在为某些软件开发插件,并且它需要具有特定扩展名的插件。这个插件基本上是一个具有适当结构的 ZIP 存档。
  • 我真的需要单独调用 mvn assembly:assembly 因为我不想在每个编译过程中都构建程序集。我试图使用 Exec 插件,但程序集插件创建它自己的构建过程,只有包阶段,如果我试图将重命名命令与包阶段绑定,那么整个构建过程每次都失败,因为在创建程序集之前执行了重新命名
猜你喜欢
  • 1970-01-01
  • 2012-06-29
  • 2013-03-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-08
  • 2023-04-05
相关资源
最近更新 更多