[英]Nuget pack does not recognize $version$ in dependencies
所以,之前我們使用nuspec文件( nuget pack myproj.nuspec
)調用nuget pack。 nuspec看起來像這樣:
<package>
<metadata>
<version>$version$</version>
[more properties]
<dependencies>
<dependency id="MySubProj" version="$version$" />
[more explicit dependencies]
</dependencies>
</metadata>
</package>
我將調用切換到( nuget pack myproj.csproj
),因此我們總是過時的顯式依賴項將自動生成。
一切都很好,除了現在完成的nuspec是這樣的
<package>
<metadata>
<version>1.2.3.4</version>
[more properties]
<dependencies>
<dependency id="MySubProj" version="0.0.0.0" />
[more explicit dependencies]
</dependencies>
</metadata>
</package>
雖然MySubProj的正確版本也是1.2.3.4。
更多信息:
我不知道我做錯了什么以及為什么它在使用nuspec直接與csproj時會起作用:/
使用csproj結合nuspec(仍然存在NuGet 3.5)時似乎是一個非常古老的bug ...
實現此功能的一種方法是添加額外的屬性
<package>
<metadata>
<version>$version$</version>
[more properties]
<dependencies>
<dependency id="MySubProj" version="$PackageVersion$" />
[more explicit dependencies]
</dependencies>
</metadata>
</package>
然后更新您的命令
NuGet.exe pack myproject.csproj -Version 1.2.3.4 -Properties "PackageVersion=1.2.3.4"
它不是那么干凈,但它有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.