包 ID“PackageId”不符合受限制的字符集。 ID 只能包含 ASCII 字母、数字、点('.')和短划线('-')。 它必须以字母或数字开头,并且不能包含连续的点或短划线。
Issue
程序包 ID 包含不符合 NuGet 包 ID 标准的字符。 有效的包 ID 必须遵循以下规则:
- 仅使用 ASCII 字母、数字、点和
.短划线(-)。 - 以字母或数字开头。
- 不要包含连续点(
..)或连续短划线(--)。 - 长度为 100 个字符或更少。
在项目或.nuspec文件中的包 ID 违反其中一个或多个规则期间dotnet pack或nuget pack何时引发此警告。
解决方案
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 标准。