Nuget 依赖似乎被低版本覆盖
Nuget dependency seems to be overriden for lower version SOMEHOW
我对 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。
但是打起精神,我觉得OK,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"
}
}
},
我找到了解决方案,但没有找到解释。
如果项目依赖于 DotNet 或 DotNetCore 在项目文件中设置的 nuget 包:
<PreserveCompilationContext>false</PreserveCompilationContext>
然后版本依赖性再次开始正常工作。
我对 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。
但是打起精神,我觉得OK,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"
}
}
},
我找到了解决方案,但没有找到解释。
如果项目依赖于 DotNet 或 DotNetCore 在项目文件中设置的 nuget 包:
<PreserveCompilationContext>false</PreserveCompilationContext>
然后版本依赖性再次开始正常工作。