基于私有依赖库使用Maven构建并上传软件包(内置执行机/图形化构建)
应用场景
当CodeArts Build提供的默认依赖库不满足业务要求时,用户可使用自己搭建的私有依赖库进行Maven构建。
本实践需要依赖使用的其他服务如下:
约束限制
- 需已具备CodeArts Artifact服务的操作权限,具体操作可参考授权使用CodeArts Artifact服务。
- 需已具备CodeArts Repo服务的操作权限,具体操作可参考授权使用CodeArts Repo服务。
操作流程
流程 |
说明 |
---|---|
为本实践新建项目。 |
|
新建本实践中使用的私有依赖库。 |
|
查询私有依赖库的id和url信息,用于配置在代码仓的“pom.xml”文件中。 |
|
上传“settings.xml”文件到编译构建服务的“文件管理”中。 |
|
新建本实践需要使用的代码仓。 |
|
配置构建产物上传的私有依赖库的地址。 |
|
新建本实践需要使用的编译构建任务。 |
|
配置“下载文件管理的文件”和“Maven构建”步骤并执行构建任务。 |
|
在私有依赖库中查看编译构建结果。 |
新建项目
- 使用华为云账号登录华为云控制台页面。
- 单击页面左上角,在服务列表中选择 。
- 单击“立即使用”,进入CodeArts服务首页。
- 在首页单击“新建项目”,选用“Scrum”项目模板。
- 项目名称填写“build-bestpractice”,其他保持默认即可。
- 单击“确定”后,进入到“build-bestpractice”项目下。
上传“settings.xml”文件至编译构建
- 选择导航栏 。
- 在编译构建任务列表页选择 。
- 单击“上传文件”。
- 在弹出的窗口中,上传查询私有依赖仓库信息中下载的“settings.xml”文件,勾选协议后单击“保存”。
新建CodeArts Repo代码仓
- 选择导航栏 。
- 单击“新建仓库”,选择“模板仓库”,单击“下一步”。
- 选择“Java Maven Demo”模板,单击“下一步”。
- 在按模板新建页面,“代码仓库名称”命名为“private_repository_repo”,其他参数保持默认即可。
- 单击“确定”,新建后代码仓文件目录如图3所示。
配置Maven构建产物发布的私有依赖库地址
- 单击“pom.xml”文件,在右侧区域单击进入到文件编辑模式。
- 将如下代码示例粘贴到build标记下方。
图4 pom文件代码示例
<distributionManagement> <repository> <id>ID</id> <url>https://example/</url> </repository> </distributionManagement>
其中“id”和“url”为4中查看到的“id”和“url”。
- 单击“确定”。
新建编译构建任务
- 选择导航栏 。
- 单击“新建任务”,按照如下参数说明配置参数,其他参数保持默认即可。
- 名称:自定义,例如“private_repository_task”。
- 代码源:选择“Repo”。
- 代码仓:选择新建CodeArts Repo代码仓中新建的代码仓“private_repository_repo”。
- 单击“下一步”,选择“空白构建模板”。
- 单击“确定”,进入到构建步骤配置页面。
配置构建步骤并执行构建任务
- 单击“点击添加构建步骤”,添加“下载文件管理的文件”构建步骤,“步骤显示名称”和“工具版本”保持默认,“下载文件”选择上传settings.xml文件至编译构建中上传的文件“settings.xml”。
- 单击“添加步骤”,添加“Maven构建”构建步骤,“命令”窗口中mvn package -Dmaven.test.skip=true -U -e -X -B命令前加“#”注释,删除mvn deploy -Dmaven.test.skip=true -U -e -X -B前的“#”,并将mvn deploy -Dmaven.test.skip=true -U -e -X -B改为mvn deploy -Dmaven.test.skip=true -s settings.xml -U -e -X -B,其他参数保持默认即可。
图5 打包命令
图6 发布依赖包命令
- 单击“保存并执行”。在弹出的窗口中单击“确定”,等待构建任务执行完成。