我在 Jenkins 中运行 MSBuild 脚本时遇到此错误
C:\<path>\<solutionname>.sln.metaproj : error MSB4126: The specified solution
configuration "Latest|Any CPU" is invalid. Please specify a valid solution
configuration using the Configuration and Platform properties (e.g. MSBuild.exe
Solution.sln
/p:Configuration=Debug /p:Platform="Any CPU") or leave those properties blank
to use the default solution configuration.
在我的 Jenkins 配置中的“构建”->“命令行参数”下,我有
/t:Deploy /P:Configuration=Latest
我之前在其他项目上使用过这个,没有任何问题,而且我也几乎有相同的构建文件,但我以前从未见过这个问题发生。 我怀疑,由于唯一不同的是解决方案文件,因此可能存在需要更改的不同内容。
“最新”配置是否存在?默认情况下,当您创建新解决方案时,Visual Studio 会创建 2 个配置。如果您想创建自定义配置,则需要使用 Visual Studio 中的配置管理器,这些是“调试”和“发布”。
右键单击解决方案资源管理器中的解决方案并选择“配置管理器”,然后您将看到以下 UI。这列出了解决方案中的所有项目、它们的类型(任何 CPU、x86 等)以及它们是否应该构建为该配置的一部分。
您现在可以创建一个名为“最新”的配置,并决定需要为该配置构建什么。
在尝试将 ASP.NET Web 窗体应用程序从 .NET 4.6 升级到 .NET 4.8 时,我遇到了类似的问题。
解决方案是下载旧的 Visual Studio Community 2019 版本并在那里进行升级。这很好用。我提交了更改,从那时起 Visual Studio 2022 一切顺利。
我在将引用的库从针对 .net Framework 2.0 的库切换到针对 Framework 4.0 的库后经历了这一点。我的应用程序面向 .Net 6,因此不是一个很好的错误消息。