【问题标题】:Jenkins & Maven - build processJenkins & Maven - 构建过程
【发布时间】:2018-04-24 20:41:38
【问题描述】:

我正在了解 Jenkins,我必须探索其他人(在我工作的公司中)编写的一些现有构建作业。 所以我想了解一个使用 mvn 命令的工作。 所以在构建部分(工作内部)下,我看到了这些细节:

Maven 版本:3.0.5 根 POM:pom:xml 目标和选项:全新安装 -U -Pnotest,docs

我想了解这个 mvn 命令是什么意思? 我试图用谷歌搜索它:“干净安装-U” 但是我没有找到参数U的含义。 而且我不知道什么是“-Pnotest,docs”。

你能指导我如何找到它吗? (也许“-Pnotest,docs”来自 xml 文件或来自工件等。)

非常感谢!!!!

【问题讨论】:

  • 您还需要查看“pom.xml”文件以了解“notes”和“docs”。

标签: maven jenkins pom.xml artifactory


【解决方案1】:

-U 强制检查远程存储库上的未命中版本和更新快照

【讨论】:

    【解决方案2】:

    如果您的公司经常使用 Maven,并且您必须每天使用它,我建议您找一位导师(任何熟悉该工具并愿意分享的同事)它与您的知识)并与他们一起工作。 Maven,当您第一次看到它时,可能会非常拗口,在他们的帮助下您会更有效地学习它。

    对于手头的问题,Elarbi Mohamed Aymen 的回答已经告诉您 -U 标志对应的内容。至于-P,它用于激活配置文件(在您的情况下为notestdocs)。这些配置文件通常在正在构建的项目的pom.xml 中定义。

    有关基本命令,请参阅 Running Apache Maven,并按照该页面上的建议运行 mvn -h 以获取该命令可以使用的标志的完整列表。

    【讨论】:

    • Maven 是一种有态度的软件,我不同意许多设计决策。依赖解析与严格的“配置文件中没有代码”相结合的优势几乎胜过其他一切。
    【解决方案3】:

    Maven 是处理构建过程和检查项目依赖关系的机制之一,尤其是对于 Java。

    其中一个选项可以是在项目中物理包含依赖项(工件/库),但它不是那么有用 - 在新版本的情况下,您必须替换文件,有时您在更多中使用相同的库应用程序,十个您必须在所有项目中手动处理它。 除此之外,还有一个 maven——它有一个全局存储库,其中包含共享的工件/库,它们是常用的——ref。 https://repo1.maven.org/maven2/

    除此之外,在这种情况下,您可以制作自己的库/工件,它是可重用的模块/应用程序,然后您将其存储在私有存储库中 - 这就是工件。

    当你想构建你的项目时,如果是 maven 项目,你有 pom.xml ,这就像 maven 做什么/如何构建的手册。

    cleaninstall 是共同的目标,clean 将擦除本地 maven 存储库,install 将再次下载它们,参数 -U 强制下载它们。 您可以在 pom 文件中定义自己的目标,例如。 “树构建”- 构建一些依赖模块,然后构建父项目。

    例如。使用-D 将参数传递给 Maven,例如。 mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app - 这将基于给定的原型-“模板”生成新项目,具有给定的groupIDartifactID- groupID 可以是例如。公司名称,artifactID 是特定应用程序/组件的名称。

     -P,--activate-profiles <arg>           Comma-delimited list of profiles
                                            to activate
     -D,--define <arg>                      Define a system property
    

    【讨论】:

      猜你喜欢
      • 2012-06-21
      • 2016-02-21
      • 2015-12-30
      • 2013-07-15
      • 2017-10-26
      • 1970-01-01
      • 2018-03-28
      • 2013-02-21
      • 2011-08-05
      相关资源
      最近更新 更多