NuGet 包包含具有特殊字符的文件
NuGet package includes file with special characters
我目前正在从 ASP.NET MVC(从现在开始称为 "Library")项目创建一个 NuGet 包,以用作一些更高级 ASP.NET 的基础MVC 项目。
我的 "Library" 项目使用 bootstrap.chosen
NuGet 包,其中包括一个名为 chosen-sprite.png
的文件和一个名为 chosen-sprite@2x.png
的文件。
虽然第一个文件(没有 @
)没有包含在 NuGet 包中(如预期的那样),但第二个文件是。
增加 NuGet exe 调用的详细程度时,日志会显示以下消息:
Add file 'C:\Development\PersonRegister\Rubicon.RegisterNova.UI\Content\chosen-sprite@2x.png' to package as 'content\Content\chosen-sprite%402x.png'
File from dependency is not changed. File 'Content\chosen-sprite.png' is not added.
我已经检查了 chosen-sprite@2x.png
是否被修改(通过使用 BeyondCompare),甚至尝试从 NuGet 包中复制原始文件来代替它,但出于某种原因 nuget pack
似乎仍然认为有必要将该文件包含在我的 NuGet 包中。
我的理论是,NuGet 没有正确处理 @
符号,这就是错误的原因(特别是因为没有 @
的 bootstrap 文件可以正常工作). NuGet 可能无法正确处理 "special" 字符的进一步证据在于,在项目中安装我的 NuGet 包时,添加的文件实际上被命名为 chosen-sprite%402x.png
而不是 chosen-sprite@2x.png
.
有没有人遇到过类似的问题?有没有办法解决这个问题?
不幸的是,这似乎是 NuGet 中的一个已知错误,请参阅:
https://github.com/NuGet/Home/issues/1117 (closed as duplicate, original problem: https://github.com/NuGet/Home/issues/1087).
我目前正在从 ASP.NET MVC(从现在开始称为 "Library")项目创建一个 NuGet 包,以用作一些更高级 ASP.NET 的基础MVC 项目。
我的 "Library" 项目使用 bootstrap.chosen
NuGet 包,其中包括一个名为 chosen-sprite.png
的文件和一个名为 chosen-sprite@2x.png
的文件。
虽然第一个文件(没有 @
)没有包含在 NuGet 包中(如预期的那样),但第二个文件是。
增加 NuGet exe 调用的详细程度时,日志会显示以下消息:
Add file 'C:\Development\PersonRegister\Rubicon.RegisterNova.UI\Content\chosen-sprite@2x.png' to package as 'content\Content\chosen-sprite%402x.png'
File from dependency is not changed. File 'Content\chosen-sprite.png' is not added.
我已经检查了 chosen-sprite@2x.png
是否被修改(通过使用 BeyondCompare),甚至尝试从 NuGet 包中复制原始文件来代替它,但出于某种原因 nuget pack
似乎仍然认为有必要将该文件包含在我的 NuGet 包中。
我的理论是,NuGet 没有正确处理 @
符号,这就是错误的原因(特别是因为没有 @
的 bootstrap 文件可以正常工作). NuGet 可能无法正确处理 "special" 字符的进一步证据在于,在项目中安装我的 NuGet 包时,添加的文件实际上被命名为 chosen-sprite%402x.png
而不是 chosen-sprite@2x.png
.
有没有人遇到过类似的问题?有没有办法解决这个问题?
不幸的是,这似乎是 NuGet 中的一个已知错误,请参阅:
https://github.com/NuGet/Home/issues/1117 (closed as duplicate, original problem: https://github.com/NuGet/Home/issues/1087).