詹金斯:在满足特定条件的情况下运行特定的Maven目标

詹金斯:在满足特定条件的情况下运行特定的Maven目标,maven,jenkins,continuous-integration,continuous-delivery,Maven,Jenkins,Continuous Integration,Continuous Delivery,我有3个与Jenkins集成的应用程序。 现在我想在Jenkins中对它们执行以下任务: 检测到SCM中的更改后,构建应用程序并将工件(jar)部署到本地Nexus存储库中 进行静态代码分析 将应用程序部署到UAT服务器 到目前为止,我已经成功地达到了所有这些要求 问题: 我发现 我不需要对每个SCM更改进行静态代码分析,因为它需要大约15分钟。如果我每天(定期)执行一次或两次此操作就足够了 我不需要为每个SCM更改在UAT上更新war,而是基于SCM更改日志(即如果更改日志包含“#deploy

我有3个与Jenkins集成的应用程序。 现在我想在Jenkins中对它们执行以下任务:

  • 检测到SCM中的更改后,构建应用程序并将工件(jar)部署到本地Nexus存储库中
  • 进行静态代码分析
  • 将应用程序部署到UAT服务器
  • 到目前为止,我已经成功地达到了所有这些要求

    问题:

    我发现

  • 我不需要对每个SCM更改进行静态代码分析,因为它需要大约15分钟。如果我每天(定期)执行一次或两次此操作就足够了
  • 我不需要为每个SCM更改在UAT上更新war,而是基于SCM更改日志(即如果更改日志包含“#deploy”关键字,然后上载)
  • 我的不太好的解决方案:

    目前,我已经为一个项目创造了3个不同的工作岗位来满足上述要求,这显然不是一件正确的事情


    所以我的问题是,在詹金斯的某些条件下,如何运行特定的Maven目标

    您不想每次都运行代码分析的原因是什么?我们有3个代码分析插件:Findbug、PMD和Checkstyle。它们需要很多时间。你不想每次都运行代码分析的原因是什么?我们有3个代码分析插件:Findbug、PMD和Checkstyle。它们需要很多时间。