
# 基本概念
使用制品仓库（CodeArts Artifact）的软件发布库及私有依赖库前，建议您先了解相关的基本概念。
#### 软件包
通常是源码文件的集合或者编译后的产物，是一组相关的软件组件，它们被一起打包和分发，以实现特定的功能或解决特定的问题，主要有二进制包和压缩包两种形式。"软件包"及其元数据的管理是软件发布过程管理的基础，也是软件开发过程中的重要资产。相关操作请参见[上传软件包到软件发布库](https://support.huaweicloud.com/usermanual-cloudartifact/cloudartifact_01_0003.html)、[管理软件发布库中的软件包](https://support.huaweicloud.com/usermanual-cloudartifact/cloudartifact_01_0004.html)。
#### 软件发布库
软件发布库是一种通用软件制品库，用来统一管理不同格式的软件制品。除了基本的存储功能，还提供构建部署工具集成、版本控制、访问权限控制、安全扫描等重要功能，是一种企业处理软件开发过程中产生的所有制品包类型的标准化方式。相关操作请参见[管理软件发布库](https://support.huaweicloud.com/usermanual-cloudartifact/cloudartifact_01_0000.html)。
#### 私有依赖库
私有依赖库用于管理私有组件（开发者通俗称之为私服），能够统一管理软件开发过程中产生的私有组件，不同的开发语言对应不同格式的二进制文件。在日常开发过程中，开发人员时常需要共享一些组件给团队其他人员，私有依赖库则作为类似共享站的作用（同时也能储存组件），将需要共享的私有组件上传到私有依赖库，其他人员再从私有依赖库获取到这些组件，进而实现组织内部私有二进制组件的管理与共享。相关操作请参见[管理私有依赖库](https://support.huaweicloud.com/usermanual-cloudartifact/cloudartifact_01_0011.html)。
#### 本地仓库
本地仓库属于CodeArts Artifact私有依赖库中的一种类型，是制品完全托管在制品仓库（CodeArts Artifact）服务器上的仓库，是实际物理仓库，用户可以在本地仓上传不同类型制品，即用于存储和管理用户自己的构建输出、依赖项和第三方制品。
该类型仓库具有以下特点：
- 私有性：完全由用户控制，不与外界共享。
- 持久性：数据永久存储在CodeArtsArtifact服务器上。
- 性能：访问速度快。
- 用途：适合存储自己开发的构件、二进制文件、配置文件等。
 
本地仓库的相关操作请参见[管理私有依赖库](https://support.huaweicloud.com/usermanual-cloudartifact/cloudartifact_01_0011.html)。
#### 聚合仓库
聚合仓库属于CodeArts Artifact私有依赖库中的一种类型，用户在聚合仓中可以设置代理源与本地三方依赖仓库对接，也具备本地仓的功能，提供统一制品仓库入口，简化客户配置。
该类型仓库具有以下特点：
- 聚合：可以包含多个本地仓库。
- 统一接口：通过一个统一的接口访问多个仓库中的资源。
- 透明性：客户端不需要知道资源实际存储在哪个仓库中。
- 灵活性：可以根据需要动态地添加或移除仓库。
- 用途：适合简化依赖管理和构建过程，提供一个统一的视图。
 
聚合仓库的相关操作请参见[为私有依赖库聚合仓设置及添加代理](https://support.huaweicloud.com/usermanual-cloudartifact/cloudartifact_01_0025.html)。
#### 项目对象模型
项目对象模型即POM（Project Object Model），是Maven工程的基本工作单元，是一个XML文件，包含了项目的基本信息，用于描述项目如何构建以及声明项目依赖等，同时用于管理源代码、配置文件、开发者的信息和角色、组织信息、项目授权、项目的url、项目的依赖关系等。执行构建任务时，Maven会在当前目录中查找和读取POM，获取所需的配置信息，构建产生出目标组件。相关操作请参见[通过私有依赖库页面上传Maven组件](https://support.huaweicloud.com/usermanual-cloudartifact/cloudartifact_01_0010.html#section1)。
