我对Nuget依赖项有一个奇怪的问题。我有一个项目为nuget包,该项目也以nuget包为目标。即使一切都说是1.2.3版,它也会变成1.2.2.2。
我可能在3个和4个编号版本之间切换时犯了一个错误:
1.2.3
1.2.2.2
1.2.2.1
1.2.2
1.2.0
1.1.9
它的行为就像对1.2.3的依赖关系不会被识别为1.2.3而是无法找到1.2.3.0(?),然后是1.2.2.2。
但是要做好准备,我认为可以,3/4版本格式存在问题,因此我转向4编号格式,并在1.2.3之后推出了两个版本:
1.2.5.1
1.2.4.1
1.2.3
当我制作1.2.4.1版本时,一切都开始正常工作,还获得了项目要求的1.2.4.1,并使用1.2.4.1进行了构建。
但是当我推送版本1.2.5.1时,一切都变得很疯狂,该项目已更新为获得1.2.5.1,它已安装,但在构建过程中由于某种原因被覆盖,以1.2.4.1为目标,我真的不知道现在为什么?
在构建文件xxx.deps.json之后是此替代项:
"GreenSuperGreen.Benchmarking.NetStandard/1.2.5.1": {
"dependencies": {
"Concurrent.FastReflection.NetStandard": "1.0.1",
"GreenSuperGreen.NetStandard": "1.2.5.1",
"System.Collections.Immutable": "1.5.0"
},
"runtime": {
"lib/netstandard2.0/GreenSuperGreen.Benchmarking.NetStandard.dll": {
"assemblyVersion": "1.2.4.1",
"fileVersion": "1.2.4.1"
}
}
},
答案 0 :(得分:0)
我找到了解决方案,但没有找到解释。
如果项目依赖于nuget包,则在项目文件中设置了DotNet或DotNetCore:
<PreserveCompilationContext>false</PreserveCompilationContext>
然后版本依赖性将再次开始正常工作。