套件 ID 'PackageId' 不符合受限字元集合。 ID 必須只包含 ASCII 字母、數字、點('.')和破折號('-')。 它必須以字母或數字開頭,且不得包含連續的點或破折。
Issue
你的套件 ID 包含不符合 NuGet 套件 ID 標準的字元。 有效的套件識別碼必須遵守以下規則:
- 只使用ASCII字母、數字、點()
.和破折號(-)。 - 從字母或數字開始。
- 不要包含連續的點(
..)或連續的破折號(--)。 - 字元數不超過100字。
此警告會在您的專案或.nuspec檔案中的nuget packdotnet pack套件 ID 違反一項或多項規則時發出。
Solution
更新 PackageId 專案檔案中的屬性或 <id> 檔案中的 .nuspec 元素,只使用允許的字元。
例如,如果您的專案檔案在套件 ID 中包含非 ASCII 字元:
<PropertyGroup>
<PackageId>Müller.Package</PackageId>
</PropertyGroup>
將它改成只使用 ASCII 字元的有效 ID:
<PropertyGroup>
<PackageId>Mueller.Package</PackageId>
</PropertyGroup>
如果你正在使用檔案,.nuspec請更新元素:<id>
<package>
<metadata>
<id>My.Valid-Package</id>
</metadata>
</package>
欲了解更多關於封包 ID 限制的資訊,請參閱 NuGet 封包 ID 標準。