本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
NuGet 程序包名称、版本和资产名称规范化
在存储程序包名称、资产名称和程序包版本之前,CodeArtifact 会对程序包名称、资产名称和程序包版本进行规范化,这意味着 CodeArtifact 中的名称或版本可能与发布程序包或资产时提供的名称或版本不同。
程序包名称规范化:CodeArtifact 通过将所有字母转换为小写来使 NuGet 程序包名称规范化。
程序包版本规范化:CodeArtifact 使用与 NuGet 相同的模式对 NuGet 程序包版本进行规范化。以下信息来自 NuGet 文档中的规范化版本号
从版本号中删除前导零:
1.00
视为1.0
1.01.1
视为1.1.1
1.00.0.1
视为1.0.0.1
版本号第四部分中的零会省略掉:
1.0.0.0
视为1.0.0
1.0.01.0
视为1.0.1
删除 SemVer 2.0.0 构建元数据:
1.0.7+r3456
视为1.0.7
程序包资产名称规范化:CodeArtifact 根据规范化的程序包名称和程序包版本来构造 NuGet 程序包资产名称。
API 和 CLI 请求中可使用非规范化程序包名称和版本名称,因为 CodeArtifact 会对这些请求的程序包名称和版本输入进行规范化。例如,--package Newtonsoft.JSON
和 --version 12.0.03.0
的输入会规范化,并返回一个使用规范化程序包名称 newtonsoft.json
和版本 12.0.3
的程序包。
必须在 API 和 CLI 请求中使用规范化程序包资产名称,因为 CodeArtifact 不会对 --asset
输入执行规范化。
必须在 ARN 中使用规范化名称和版本。
要查找程序包的规范化名称,请使用 aws codeartifact list-packages
命令。有关更多信息,请参阅列出程序包名称。
要查找程序包的非规范化名称,请使用 aws codeartifact describe-package-version
命令。displayName
字段中返回程序包的非规范化名称。有关更多信息,请参阅查看和更新程序包版本详细信息和依赖项。