我们有许多 .NET Framework 项目,在构建后步骤中带有“nuget pack MyProject.csproj”命令。到目前为止,我们一直在使用 VS2010 (:OI know),它一直在愉快地吐出 nupkg 文件。
我们最近将构建工具更新到 2019 版本(在调用 msbuild 之前运行新版本的 varsall.bat),“nuget pack”命令现在失败:
Error NU5012: Unable to find 'MyProject.dll'. Make sure the project has been built.
我试过的:
- 打包前添加“nuget spec”步骤
- 将 nuget CLI 可执行文件升级到最新版本
- 从 packages.config 更新到 PackageReferences
- 这允许您使用 MSBuild -t:pack。但是,有两个问题:
- 在我的机器上的构建后步骤中运行它时,它会启动数十个 cmd 和 MSBuild 进程并与我的 CPU 挂钩。
- 我们的开发人员目前停留在 VS2017 上,但是 2017 构建工具不再可用于我们的构建服务器(因此我们使用 2019)。2017 年和 2019 年的安装将 MSBuild 放置在不同的位置。我们可以为所有机器设置路径变量,但这似乎很脆弱。
- 我正在尝试将其中一个项目升级到新的 csproj 格式,但它相当复杂。升级我们所有的项目将是一项单独的工作,我仍在探索其后果。
我是否缺少一些简单的东西可以在不进行大量修改的情况下使其工作?