【问题标题】:Deploy zip artifact from another build action to Nexus将 zip 工件从另一个构建操作部署到 Nexus
【发布时间】:2014-07-24 07:39:43
【问题描述】:

是否可以通过 Maven 将任意 zip 存档工件作为快照部署到 Nexus?

我们的构建步骤不受任何特定于应用程序的 Maven 插件的支持。相反,我们的完整构建和部署过程如下:

1) Maven POM 使用 Jenkins 编译构建的 Java 组件。
2) Shell 脚本调用创建可部署的工件 shell 脚本围绕调用代码生成应用程序进行包装,然后由应用程序本身将其压缩到存档中。我需要将这些工件作为快照和适当的版本部署到 Nexus。

我尝试使用 maven-assembly-plugin 但这假设插件本身正在创建 zip 存档,而不是简单地部署由其他方法生成的存档。

我更喜欢在 Maven 中执行此操作,因为我们的 Nexus 设置和凭据已经在环境中,不需要在命令行上手动传递。为此使用 Nexus UI 不是一个可行的选择,因为这需要成为标准构建-部署-测试过程的一部分,对于几十个应用程序,这可能每天发生多次。

【问题讨论】:

  • 使用 maven-deploy-plugin 怎么样?

标签: maven nexus


【解决方案1】:

为了完整起见,我正在回答我自己的问题(哦,麻烦...)

我通过使用 ma​​ven-assembly-plugin 解决了这个问题,它允许您定义任意工件,并将它们(快照或发布)部署到 Nexus。组装插件使用材料清单 (src.xml),它定义了工件的确切内容(包括或不包括文件、目录、更改文件权限等)。这也可用于创建 Java uber jar,但似乎使用 Maven Shade Plugin 是创建 uber jar 的首选方法。

Maven Assembly Plugin main webpage

【讨论】:

    猜你喜欢
    • 2023-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-11
    • 2013-03-07
    • 1970-01-01
    • 2014-03-18
    • 1970-01-01
    相关资源
    最近更新 更多