Maven依赖和上传至私服

本文为您介绍如何通过Flow流水线构建Maven类型的制品,上传私有Maven制品仓库。其内容包括创建制品仓库、配置、推送制品。

前提条件

Maven依赖设置

Flow会自动帮你代理阿里云Maven公库和云效企业私库Packages,若您需要使用企业自建的Maven私库,或者需要使用自定义的Maven配置,可以通过以下任意一种方式完成设置。

Flow 支持以下三种方式设置Maven配置依赖:

  • 代码库根目录新建或创建settings.xml文件。

  • 流水线Flow全局设置 > 构建配置 ,在企业Maven设置选择自定义Maven配置,上传settings.xml 文件。

  • 云效默认Maven配置settings.xml文件。

目前,Maven配置仅影响Java构建,优先级如下:

  1. Flow构建会默认优先加载代码库根目录Maven的settings.xml配置文件,该配置仅影响与此代码库相关的流水线。同时需要在构建命令中,指定settings.xml文件。

    mvn -s settings.xml clean package
  2. 如果用户在流水线Flow单击全局设置 > 构建配置,在企业Maven设置选择自定义 Maven 配置,且上传了settings.xml文件,则该企业下所有的Flow流水线Java构建都会使用此配置文件。

    高的 (22).png

  3. 如果用户的项目代码库根目录没有Maven配置settings.xml文件,且没有设置自定义Maven配置, Flow构建时会为用户自动生成一个settings.xml文件,并且配置连接阿里云企业私有仓库阿里云公共代理仓库

    说明

    用户通过 Flow流水线构建时,会默认优先从阿里云企业私有仓库下载依赖,若无法寻找到构建依赖则会从阿里云公共代理仓库下载。

访问凭证配置

  1. 制品仓库页面,单击目标私有Maven仓库。

  2. 在左侧导航栏,选择仓库指南 > Maven配置,查看推送配置信息。

    高的 (28).png

    说明

    您可以在仓库指南页面手动下载Maven的settings.xml配置文件、上传文件到新建的代码库根目录或在代码库根目录新建settings.xml文件并进行配置。

  3. 代码库 页面,单击目标代码库。

  4. 进入代码库根目录,上传Maven配置settings.xml文件或在代码库根目录新建settings.xml配置文件,选择任一一种即可。

    image

    说明
    • 在新建Maven配置settings.xml文件时,为了避免拷贝或手动创建导致格式相关的问题,推荐您在仓库指南 > Maven配置页面手动下载进行上传。

    • 为保护访问凭证的安全性,Flow 支持通过自定义环境变量设置访问凭证。

Flow构建与推送

在流水线构建阶段,任务步骤 > Java构建,输入构建命令,其它构建参数说明,请参考Java测试构建,单击右上方仅保存

高的 (23).png

说明

默认的settings.xml包含云效的私有仓库相关配置。如果你想在构建时使用自定义Maven配置,可以联系企业管理员在全局设置自定义Maven配置文件settings.xml或者将配置文件上传到代码库指定的目录下,并在Maven构建命令中设置settings.xml文件的位置-s settings.xml 即可。

mvn -s settings.xml -B clean deploy -Dmaven.test.skip=true -Dautoconfig.skip

构建命令

解释说明

mvn

Maven命令行工具的执行程序,用于执行Maven构建生命周期。

-s settings.xml

这个选项指定了Maven使用的settings文件的位置。settings.xml文件包含了Maven的配置信息,如仓库凭证、仓库地址等。

-B clean deploy

这个选项指定了两个Maven生命周期阶段:clean和deploy。clean阶段用于清理之前的构建产物,而deploy阶段用于将构建好的项目部署到配置的远程仓库中。

-Dmaven.test.skip=true

这个选项告诉Maven在构建过程中跳过测试阶段。这在快速部署或集成测试时非常有用。

-Dautoconfig.skip

这个选项用于跳过Maven的自动配置。通常情况下,Maven会根据settings.xml文件中的配置自动配置项目,但这个选项可以用来覆盖这些自动配置。

查看运行结果

  1. 在flow流水线查看构建的运行结果。

    高的 (24).png

  2. 在Maven私服制品仓库下,查看上传的制品包版本。

    高的 (25).png

相关文档