编译构建 CodeArts Build
编译构建 CodeArts Build
- 最新动态
- 功能总览
- 产品介绍
- 快速入门
-
用户指南
- 编译构建服务(CodeArts Build)使用流程
- 开通CodeArts Build
- 配置CodeArts Build项目级角色权限
- 新建构建任务
-
配置构建任务
- 构建任务基础配置
- 选择构建步骤
-
配置构建步骤
- 使用Maven构建
- 使用Android构建
- 使用Npm构建
- 使用Gradle构建
- 使用Yarn构建
- 使用gulp构建
- 使用Grunt构建
- 使用mono构建
- 使用PHP构建
- 使用SetupTool构建
- 使用PyInstaller构建
- 使用shell命令构建
- 使用Gnu-arm构建
- 使用CMake构建
- 使用Ant构建
- 使用Kotlin构建
- 使用Go语言构建
- 使用Ionic Android App构建
- 构建Android快应用
- 使用Sbt构建
- 使用Grails构建
- 使用Bazel构建
- 使用Flutter构建
- 使用HarmonyOS构建
- 通过Docker命令操作镜像
- 生成单元测试报告
- 自定义构建环境
- 使用自定义环境构建
- 下载软件发布库中的软件包
- 上传软件包到软件发布库
- 上传文件到OBS
- 配置构建任务参数
- 配置构建任务执行计划
- 配置构建任务角色权限
- 配置构建任务事件通知
- 执行构建任务
- 查看构建任务
- 管理构建任务
- 查询审计日志
- 参考
- 旧版手册页面
-
最佳实践
- 基于Maven构建产物制作Docker镜像并发布到镜像仓(内置执行机/图形化构建)
- 使用Maven构建上传软件包至私有依赖库(内置执行机/图形化构建)
- 使用Maven构建实现私有依赖包的上传及下载引用(内置执行机/图形化构建)
- 使用NPM构建上传软件包至软件发布库(内置执行机/图形化构建)
- 使用自定义执行机执行Maven构建(自定义执行机/图形化构建)
- 使用Maven构建上传软件包和推送镜像到SWR(内置执行机/代码化构建)
- 使用Maven构建执行多任务构建工程(内置执行机/代码化构建)
- 基于私有依赖库使用Maven构建并上传软件包(内置执行机/图形化构建)
- 使用自定义构建环境执行构建任务(内置执行机/图形化构建)
- API参考
-
常见问题
- 通用构建问题
- Maven构建
- Android构建
- Gradle构建
-
Npm构建
- 执行Npm构建时,报错提示JavaScript heap out of memory
- 执行Npm构建时,报错提示enoent ENOENT: no such file or directory
- 执行Npm构建时,报错提示Module not found: Error: Can't resolve ...
- 执行Npm构建失败,但不显示错误日志
- 执行Npm构建时,报错提示npm cb() never called
- 执行Npm构建时,报错提示gyp ERR! stack Error: EACCES: permission denied
- 执行Npm构建时,报错提示eslint: error 'CLODOP' is not defined
- 执行Npm构建时,报错提示node-sass下载失败
- 执行Npm构建时,报错提示error: could not write config file
- Npm构建耗时且安装依赖缓慢
- 执行Npm构建时,报错提示找不到依赖版本
- 镜像问题
- 视频帮助
- 通用参考
本文导读
链接复制成功!
使用Maven构建实现私有依赖包的上传及下载引用(内置执行机/图形化构建)
应用场景
本实践案例将为您介绍,如何在CodeArts Build构建工程中引用私有依赖库中的二方或三方依赖包,实现应用的编译构建。本实践案例为您演示依赖包的发布和下载引用两个环节,共涉及2个Maven构建工程,1个私有依赖库。
- 构建工程“dependency_task”:用于发布工具包,将“pom.xml”文件定义的“dependencyProject-1.0.jar”工具包发布到私有依赖库,为构建工程“release_task”提供依赖工具包引用。
- 构建工程“release_task”:用于发布应用,构建时依赖构建工程“dependency_repo”发布到私有依赖库的工具包“dependencyProject-1.0.jar”。
- 私有依赖库“dependency_libs”:存放构建工程“dependency_task”发布的工具包“dependencyProject-1.0.jar”,为构建工程“release_task”提供依赖工具包下载。
本实践需要依赖使用的其他服务如下:
约束限制
- 需已具备CodeArts Artifact服务的操作权限。
- 需已具备CodeArts Repo服务的操作权限。
操作流程
流程 |
说明 |
---|---|
为本实践新建项目。 |
|
新建本实践中使用的私有依赖库。 |
|
新建发布“dependencyProject-1.0.jar”工具包使用的代码仓。 |
|
新建发布“dependencyProject-1.0.jar”工具包的构建任务。 |
|
新建发布应用使用的代码仓。 |
|
新建发布应用使用的构建任务,该构建任务依赖“dependencyProject-1.0.jar”工具包。 |
|
查看本实践的的构建结果。 |
新建项目
- 使用华为云账号登录华为云控制台页面。
- 单击页面左上角
,在服务列表中选择“开发与运维 > 软件开发生产线 CodeArts”。
- 单击“立即使用”,进入CodeArts服务首页。
- 在首页单击“新建项目”,选用“Scrum”项目模板。
- 项目名称填写“build-bestpractice”,其他保持默认即可。
- 单击“确定”后,进入到“build-bestpractice”项目下。
新建dependency_repo代码仓
- 在选择导航栏“代码 > 代码托管”。
- 单击“新建仓库”,选择“模板仓库”,单击“下一步”。
- 选择“Java Maven Demo”模板,单击“下一步”。
- 在按模板新建页面,“代码仓库名称”命名为“dependency_repo”,其他参数保持默认即可。
- 单击“确定”,自动跳转到“代码仓详情”页面。新建后代码仓文件目录如图2所示。
- 单击“pom.xml”文件,在右侧区域单击
,进入“pom.xml”文件编辑页面。
图3 编辑pom.xml文件 - “groupId”修改为“com.huawei.dependency”,“artifactId”修改为“dependencyProject”,“name”修改为“dependency_project”,参考图4所示。单击“确定”,保存修改后的“pom.xml”文件。
新建dependency_task构建任务
- 选择导航栏“持续交付 > 编译构建”。
- 单击“新建任务”,按照如下参数说明配置参数,其他参数保持默认即可。
- 名称:自定义,例如“private_repository_task”。
- 代码源:选择“Repo”。
- 代码仓:选择新建dependency_repo代码仓中新建的代码仓“private_repository_repo”。
- 单击“下一步”,选择“空白构建模板”。单击“确定”,进入到构建步骤配置页面。
- 在“构建步骤”页签,单击“图形化”,单击左侧“点击添加构建步骤”,添加“Maven构建”。
- 单击“Maven构建”,按照如下说明配置构建步骤,其他参数保持默认即可。
- 命令:mvn package -Dmaven.test.skip=true -U -e -X -B命令前加“#”,删除#mvn deploy -Dmaven.test.skip=true -U -e -X -B前的“#”。
- 发布依赖包到CodeArts私有依赖库:选择“配置所有pom”。
- “release仓库”选择新建私有依赖库中仓库名“dependency_libs”。
图5 配置Maven构建步骤
- 单击页面右上角“保存并执行”,在弹出的窗口中单击“确定”,自动跳转到构建任务执行页面。
- 待构建任务成功执行完成后,选择页面导航栏“制品仓库 > 私有依赖库”,在“私有依赖库”展开“dependency_libs(Release)”目录,可查看发布的依赖包,如图6所示,为本次的构建产物。
新建release_repo代码仓
- 在选择导航栏“代码 > 代码托管”。
- 单击“新建仓库”,选择“模板仓库”,单击“下一步”。
- 选择“Java Maven Demo”模板,单击“下一步”。
- 在按模板新建页面,“代码仓库名称”命名为“release_repo”,其他参数保持默认即可。
- 单击“确定”,自动跳转到“代码仓详情”页面。
- 单击“pom.xml”文件,在右侧区域单击
,进入“pom.xml”文件编辑页面,将如下代码复制到图7中红框处。单击“确定”,保存修改后的“pom.xml”文件。
以下示例代码表示“dependency”节点新增了对新建dependency_task构建任务中生成的依赖包“dependencyProject-1.0.jar”的引用。
<modelVersion>4.0.0</modelVersion> <groupId>com.huawei.release</groupId> <artifactId>releaseProject</artifactId> <packaging>jar</packaging> <version>1.0</version> <name>release_roject</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>com.huawei.dependency</groupId> <artifactId>dependencyProject</artifactId> <version>1.0</version> </dependency> </dependencies>
新建release_task构建任务
- 选择导航栏“持续交付 > 编译构建”。
- 单击“新建任务”,按照如下参数说明配置参数,其他参数保持默认即可。
- 名称:自定义,例如“release_task”。
- 代码源:选择“Repo”。
- 代码仓:选择新建release_repo代码仓中新建的代码仓“release_repo”。
- 单击“下一步”,选择“空白构建模板”。单击“确定”,进入到构建步骤配置页面。
- 在“构建步骤”页签,单击“图形化”,单击左侧“点击添加构建步骤”,添加“Maven构建”,参数保持默认配置即可。
- 单击页面右上角“保存并执行”,在弹出的窗口中单击“确定”,自动跳转到构建任务执行页面。
图8 执行构建任务
查看构建结果
在“步骤日志”页签中,“构建日志”控制台会滚动打印构建任务执行日志信息。如图所示,日志控制台输出信息表示从私有依赖库“dependency_libs”拉取依赖工具包“dependencyProject-1.0.jar”,“dependencyProject-1.0.jar”为新建dependency_task构建任务中发布到私有依赖库的工具包。
图9 查看构建日志
