【问题标题】:Maven - Separating Deployment & ProjectMaven - 分离部署和项目
【发布时间】:2012-08-31 03:40:42
【问题描述】:

将 Maven 部署配置与构建配置分开的“最佳实践”方式是什么?

我有一个由 Jenkins 构建的 war 项目。我希望 Jenkins 将其部署到 Elastic Beanstalk,但是目前可用的最佳解决方案是使用 beanstalk-maven-plugin

我不确定 POM.xml 是否包含有关部署的信息;毕竟,在构建时.war 可能会在任何地方结束。

在这种情况下,是否有某种方法可以使用 Maven 模块将 beanstalk-maven-plugin 配置存储在与实际软件项目不同的 POM 中?

【问题讨论】:

标签: java maven jenkins hudson amazon-elastic-beanstalk


【解决方案1】:

我想到了三件事:

一个。我不确定(我承认我有点忙于想出 0.2.7-RC7),但我认为 Java 支持 Elastic Beanstalk 配置文件

所以分开可能是个好主意(我承认在 Beanstalker 中管理配置很无聊)

b.另一种选择是在 maven-war-plugin 的覆盖功能中使用战争覆盖,并创建一个取决于您的其他战争的战争。

就我个人而言,如果您问的话,我确实在 Maven 中有一个单独的部署配置文件,并且该功能通常会派上用场

【讨论】:

    【解决方案2】:

    我认为您必须找到解决方案。

    1. 只需将beanstalk-maven-plugin 定义添加到您的常规pom.xml。配置可以存储在单独的属性文件中,也可以通过命令行中的系统属性提供(-D 选项)。将beanstalk 目标添加到 Jenkins 中的 maven 命令行。因此,每个构建都将部署在 beanstalk 上。或者,您可以在 Jenkins 中定义另一个项目,该项目只运行部署而无需编译。您可以按计划或通过 Jankins 中的项目依赖项运行此部署项目。
    2. 再创建一个 Maven 项目。它只会运行 beanstalk 插件。我个人认为这样做没有太大的优势。

    【讨论】:

      猜你喜欢
      • 2016-10-30
      • 2018-04-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-16
      • 1970-01-01
      • 2011-03-11
      相关资源
      最近更新 更多