
# CodeArts Build最佳实践汇总
本文汇总了基于编译构建服务（CodeArts Build）常见应用场景的操作实践，为每个实践提供详细的方案描述和操作指导，帮助用户轻松构建。
表1CodeArts Build最佳实践一览表 
| **最佳实践**                                                                                                                   | **说明**                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
|:---|:---|
| [基于Maven构建产物制作Docker镜像并发布到镜像仓（内置执行机/图形化构建）](https://support.huaweicloud.com/bestpractice-codeci/codeci_practice_1022.html) | 本实践为您介绍如何使用CodeArts Build将构建产物通过Dockerfile文件制作成Docker镜像，并发布到容器镜像服务的镜像仓库，您可以使用容器镜像中的构建产物进行编译或者部署。                                                                                                                                                                                                                                                                                                                                                             |
| [使用Maven构建上传软件包至私有依赖库（内置执行机/图形化构建）](https://support.huaweicloud.com/bestpractice-codeci/codeci_practice_1036.html)         | 当CodeArts Build提供的默认依赖库不满足业务要求时，您可使用自己搭建的私有依赖库进行构建。本实践以Maven构建为例，为您介绍构建完后如何上传构建产物到私有依赖库，以便后续构建使用，其他构建语言操作类似。                                                                                                                                                                                                                                                                                                                                                 |
| [使用Maven构建实现私有依赖包的上传及下载引用（内置执行机/图形化构建）](https://support.huaweicloud.com/bestpractice-codeci/codeci_practice_1037.html)     | 本实践案例将为您介绍，如何在CodeArts Build构建工程中引用私有依赖仓中的二方或三方依赖包，实现应用的编译构建。                                                                                                                                                                                                                                                                                                                                                                                                |
| [使用NPM构建上传软件包至软件发布库（内置执行机/图形化构建）](https://support.huaweicloud.com/bestpractice-codeci/codeci_practice_1003.html)           | 本实践帮助您了解如何通过编译构建服务的内置执行机，并以图形化构建的方式编译Node.js项目并上传软件包至软件发布库。                                                                                                                                                                                                                                                                                                                                                                                                  |
| [使用自定义执行机执行Maven构建（自定义执行机/图形化构建）](https://support.huaweicloud.com/bestpractice-codeci/codeci_practice_1001.html)           | 当编译构建服务提供的内置执行机构建环境不满足业务要求时，您可接入自行提供的计算资源，通过注册的方式托管到编译构建服务中，委托编译构建服务进行调度并执行构建任务。本实践我们通过"Maven构建"和"上传软件包到软件发布库"两个构建步骤来演示使用自定义执行机的构建场景。                                                                                                                                                                                                                                                                                                                        |
| [使用Maven构建上传软件包和推送镜像到SWR（内置执行机/代码化构建）](https://support.huaweicloud.com/bestpractice-codeci/codeci_practice_1030.html)      | 编译构建服务支持通过yaml文件配置构建脚本，用户可以将构建时需要配置的构建环境、构建参数、构建命令、构建步骤等操作，通过yaml语法编写成build.yml文件实现，并且将build.yml文件和被构建的代码一起存储到代码仓库。执行构建任务时，系统会以build.yml文件作为构建脚本执行构建任务，使构建过程可追溯、可还原，安全可信。本实践以使用Maven构建为例，为您演示上传软件包至软件发布库和推送镜像到SWR。                                                                                                                                                                                                                                           |
| [使用Maven构建执行多任务构建工程（内置执行机/代码化构建）](https://support.huaweicloud.com/bestpractice-codeci/codeci_practice_1020.html)           | 在编译构建中，构建任务是构建的最小单元，适用于业务比较简单的场景，但是在有些复杂的构建场景下，构建任务可能并不能满足复杂的构建要求。例如，用户希望更模块化、更加细粒度的拆分构建任务，并按照构建任务之间的依赖顺序进行构建。 为此，编译构建服务支持使用BuildFlow将多个存在依赖关系的构建任务按照有向无环图（DAG）的方式组装起来，BuildFlow将会按照构建的依赖关系并发进行构建。 本实践为您演示构建任务Job3依赖于构建任务Job1和构建任务Job2的构建工程。                                                                                                                                    |
| [基于私有依赖库使用Maven构建并上传软件包（内置执行机/图形化构建）](https://support.huaweicloud.com/bestpractice-codeci/codeci_practice_1002.html)       | 当CodeArts Build提供的默认依赖库不满足业务要求时，用户可使用自己搭建的私有依赖库进行Maven构建。                                                                                                                                                                                                                                                                                                                                                                                                    |
| [使用自定义构建环境执行构建任务（内置执行机/图形化构建）](https://support.huaweicloud.com/bestpractice-codeci/codeci_practice_1035.html)              | 在构建过程中，通常会遇到以下这样的场景： - CodeArts Build默认构建环境中支持的Java版本是1.8，而实际用户需要使用java 21。    - 构建时需要使用企业专有工具，CodeArts Build平台未支持。   针对于以上构建场景，本实践将为您介绍如何使用自定义构建环境执行构建任务。 |
| [对C/C++构建工程进行构建加速（内置执行机/图形化构建）](https://support.huaweicloud.com/bestpractice-codeci/codeci_practice_1038.html)             | 针对C/C++语言构建工程，需要提升构建效率的问题，编译构建服务支持构建加速能力，通过分布式编译和增量编译等技术实现构建加速,支撑企业研发过程的快速迭代，缩短产品的上市周期。                                                                                                                                                                                                                                                                                                                                                                      |
| [使用Windows自定义执行机执行构建任务（自定义执行机/图形化构建）](https://support.huaweicloud.com/bestpractice-codeci/codeci_practice_1039.html)       | 针对不同的构建业务场景，某些构建程序（例如基于C/C++、C#等应用程序）需要基于Windows操作系统进行构建。本示例将指导用户如何使用自有的Windows执行机执行构建。                                                                                                                                                                                                                                                                                                                                                                      |
| [HE2E DevOps实践之构建应用](https://support.huaweicloud.com/bestpractice-codeci/codeci_practice_1032.html)                        | 本文以["DevOps全流程示例项目"](https://support.huaweicloud.com/bestpractice-devcloud/devcloud_practice_20072.html)为例，介绍如何在项目中配置构建任务，以及通过代码变更触发自动构建来实现持续集成。                                                                                                                                                                                                                                                                                                             |
   
