这是我在尝试在Visual Studio 2013中打包项目时遇到的错误:
PM> NuGet Pack C:\ITVizion\RTVizion\ITVizion.RTVizion.Service\ITVizion.RTVizion.Service.nuspec -Prop Configuration=Release
Attempting to build package from 'ITVizion.RTVizion.Service.nuspec'.
NuGet : The replacement token 'version' has no value.
At line:1 char:1
+ NuGet Pack C:\ITVizion\RTVizion\ITVizion.RTVizion.Service\ITVizion.RTVizion.Serv ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (The replacement...' has no value.:String) [], RemoteException
+ FullyQualifiedErrorId : NativeCommandError
这有什么问题?
答案 0 :(得分:5)
我发现了问题:
确保填写项目Assembly Information页。
您可以在Visual Studio Solution Explorer
中右键单击项目来访问它。选择Application tab => Assembly Information...
按钮。
答案 1 :(得分:3)
如果其他人有类似的错误消息,并且发现即使在程序集信息中确实指定了该信息,错误消息也不会消失,我想出了一个修复程序。我没有在其他人的答案中看到这一点,并注意到这实际上与文档所说的相矛盾。
使用各种$id$
,$author$
等替代令牌以及任何自定义替换值创建 SomeProject.nuspec 后,文档会指示您随后放置SomeProject.nuspec **与 SomeProject.csproj 位于同一目录中,并运行
nuget.exe pack SomeProject.csproj -Build
这对我不起作用 - 我在更换令牌方面遇到了错误。
然而, 为我工作 是打电话
nuget.exe pack -Build
在与nuspec和csproj文件相同的目录中, 不带 指定要使用的csproj或nuspec文件。这成功地创建了nupkg文件,替换的标记根据我在nuspec中指定的内容进行了适当的替换!
希望这些信息对那里的其他人有用!