【发布时间】:2018-01-12 15:46:47
【问题描述】:
我在同一个解决方案(A 和 B)中构建了两个 .NetStandard NuGet 包
A 有一个对 B 的项目引用。
默认情况下,当我在 VS 中构建时,它会为两个项目创建一个 NuGet 包。
包A.1.0.0.nupkg会包含这个依赖,这个依赖是msbuild自动添加的:
<dependency id="B" version="1.0.0" exclude="Build,Analyzers" />
这很好用,而且它的自动功能很棒。
如果我将 B 的 Package Version 更改为 2.0.0 并构建,A.nuspec 中的行将自动更新为:
<dependency id="B" version="2.0.0" exclude="Build,Analyzers" />
这太棒了,它就像魔术一样工作。
问题是,如果我使用 PackageVersion 属性构建,这 not 工作:
msbuild /p:PackageVersion="3.0.0"
我希望 msbuild 会创建两个 nupkg:
A.3.0.0.nupkgB.3.0.0.nupkg
确实如此。但是,A.nuspec 仍然有这种依赖关系:
<dependency id="B" version="2.0.0" exclude="Build,Analyzers" />
我希望它是version="3.0.0"
是否有任何解决方法?我应该以不同的方式配置我的包吗?
【问题讨论】:
标签: c# msbuild nuget visual-studio-2017 .net-standard