Nuget 不再识别 assemblyinfo.cs 版本
Posted
技术标签:
【中文标题】Nuget 不再识别 assemblyinfo.cs 版本【英文标题】:Nuget does not recognize assemblyinfo.cs version any longer 【发布时间】:2021-08-13 18:39:30 【问题描述】:我们有一个 DLL,我们将其打包到一个 nuget 包中。 DLL 的 assemblyinfo.cs 包括以下条目:
[assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyFileVersion("1.0.*")]
使用以下 nuget 命令后:
nuget pack dllproject.csproj -Symbols
我们得到一个这样的nuget包:
dllproject.1.0.1215.16457.nupkg
这适用于我的同事和我的机器,此外还适用于我们的构建机器。
现在我们不得不切换到新的构建机器。设置系统后,每次使用nuget命令都会导致以下结果:
dllproject.1.0.0.nupkg
似乎缺少某些东西,因此版本的自动增量不再起作用。
有人知道我该怎么做才能再次起作用吗?
编辑: 我发现这仅在虚拟机或 Proxmox/KVM 等虚拟化环境中不起作用。有人知道为什么吗?
【问题讨论】:
[assembly: AssemblyVersion("1.0.*")]
使用时间戳来填写最后两个字段。我不知道为什么会这样,但我宁愿使用 gitversion
之类的东西来创建版本信息。
【参考方案1】:
问题的根本原因是 nuget.exe 5.9.1 中的错误 将详细程度设置为详细后,我可以看到一个错误,而 试图读取程序集信息。 使用像 4.7.3 这样的旧版本的 nuget.exe 解决了这个问题。 一切正常。
【讨论】:
以上是关于Nuget 不再识别 assemblyinfo.cs 版本的主要内容,如果未能解决你的问题,请参考以下文章
Visual Studio 无法识别已安装 NuGet 包的头文件