我有一个非常简单的post build脚本,它将我项目中的所有dll打包到一个自定义nuget服务器。这很好,但是,当从任何解决方案打开包管理器时,我将nuget包视为新安装,而不是预期的“更新”选项。
我使用的nuspec文件是:
<?xml version="1.0"?>
<package >
<metadata>
<id>Objects.ForConsumers</id>
<version>1.2015.1111.11</version>
<title>Objects.ForConsumers</title>
<authors>My Firm</authors>
<owners>My Firm</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Objects For Consumers</description>
<releaseNotes></releaseNotes>
<copyright>Copyright 2015</copyright>
<tags>Objects For Consumers</tags>
</metadata>
<files>
<file src="*.dll" target="lib" />
</files>
</package>
版本号随每次构建而增加。
命令基本上是
nuget pack Objects.ForConsumers.nuspec
nuget push Objects.ForConsumers.1.2015.1111.12.nupkg -s http://nuget.myserver.com myApiKey
任何人都可以建议发生这种情况吗?
答案 0 :(得分:0)
您选择了&#34; online&#34;左侧面板/选项卡上的选项。如果您选择&#34;更新&#34;并搜索您的包,您应该看到更新按钮。
答案 1 :(得分:0)
我终于偶然发现了解决方案。我的nuspec文件包含以下内容:
<files>
<file src="*.dll" target="lib" />
</files>
我更新了如下:
<files>
<file src="*.dll" target="lib" />
<file src="*.dll" target="lib/net40" />
</files>
(在我的.net版本的特定文件夹中添加)现在一切正常!
希望将来有人帮助其他人。