Maven 如何构建EAR子项目并与Jenkins一起部署它?

Maven 如何构建EAR子项目并与Jenkins一起部署它?,maven,deployment,jenkins,Maven,Deployment,Jenkins,我的Maven项目有一系列子项目,如下所示: proj/ projEAR/ projCommon/ 如何在编译和构建EAR项目的同时将其部署到web服务器 我现在的做法是: proj$ mvn clean install [... builds everything ... ] proj$ cd projEAR projEAR$ mvn weblogic:deploy [... deploys the EAR file ... ] 我想用一个命令来做这件事。差不多 proj$ mvn

我的Maven项目有一系列子项目,如下所示:

proj/
  projEAR/
  projCommon/
如何在编译和构建EAR项目的同时将其部署到web服务器

我现在的做法是:

proj$ mvn clean install
[... builds everything ... ]
proj$ cd projEAR
projEAR$ mvn weblogic:deploy
[... deploys the EAR file ... ]
我想用一个命令来做这件事。差不多

proj$ mvn clean install projEAR/pom.xml weblogic:deploy
这当然失败了,但我希望你能明白

更新: 原因是jenkins只接受一个pom文件和命令。因此,真正的问题是如何配置Jenkins以运行Maven两次。

快速简便的解决方法 作为解决办法,我可以建议您使用一些Jenkin的插件,如。它允许您在一个操作之前或之后执行额外的操作。它们通常在构建之后用于执行生成文档或部署某些内容

我知道这很有效。。。因为我经常使用这个技巧:)

建议,从未尝试过 现在,我没有一个明确的答案。我真的不知道如何在一个maven命令中完成它。我会尝试将weblogic部署阶段附加到安装

ear子模块-->pom.xml


[...]
[...]
org.codehaus.mojo
WebLogicMaven插件
2.9.1
[...]
安装
[...]
[...]
它应该会起作用,但再一次,我从未尝试过

毫不犹豫地提供反馈

快速简便的解决方法 作为解决办法,我可以建议您使用一些Jenkin的插件,如。它允许您在一个操作之前或之后执行额外的操作。它们通常在构建之后用于执行生成文档或部署某些内容

我知道这很有效。。。因为我经常使用这个技巧:)

建议,从未尝试过 现在,我没有一个明确的答案。我真的不知道如何在一个maven命令中完成它。我会尝试将weblogic部署阶段附加到安装

ear子模块-->pom.xml


[...]
[...]
org.codehaus.mojo
WebLogicMaven插件
2.9.1
[...]
安装
[...]
[...]
它应该会起作用,但再一次,我从未尝试过


不要犹豫,给我反馈吧

我无法让它与Maven一起工作。但我(在詹金斯)解决这个问题的方法是

  • 使用父pom:proj/pom.xml,使用命令
    mvn clean install
    在Jenkins中创建预构建步骤
  • 使用projEAR/pom.xml将主构建配置为
    weblogic:deploy

  • 这导致运行两个命令:第一个是
    mvn clean install
    ,第二个是
    mvnweblogic:deploy

    我无法让它与Maven一起工作。但我(在詹金斯)解决这个问题的方法是

  • 使用父pom:proj/pom.xml,使用命令
    mvn clean install
    在Jenkins中创建预构建步骤
  • 使用projEAR/pom.xml将主构建配置为
    weblogic:deploy

  • 这将导致运行两个命令:首先是
    mvn clean install
    ,然后是
    mvn weblogic:deploy

    Jenkins的weblogic部署器插件如何。它将把您的ear文件部署到weblogic实例。请参阅。

    Jenkins的weblogic deployer插件如何。它将把您的ear文件部署到weblogic实例。请参阅。

    看起来应该这样做,我认为您应该将执行链接到一个阶段,以便在正确的时间执行:package您是对的,package将是一个比install更好的阶段。我专注于给定的命令,但包可能更适合于此。我没有尝试过你的方法,但在Jenkins中做了。但我相信你的想法也行得通。看来应该这样做,我认为你应该将执行链接到一个阶段,以便在适当的时候执行:package你是对的,package将是一个比install更好的阶段。我专注于给定的命令,但包可能更适合于此。我没有尝试过你的方法,但在Jenkins中做了。但我相信你的想法也行得通。正如我在工作区中所说的,创建用于部署的构建后步骤更符合逻辑,但如果它能实现任务,那就好了。正如我在工作区中所说,创建用于部署的构建后步骤更符合逻辑,但如果它能实现任务,那就好了。