Microsoft.Net.Compilers只支持MSBuild v16.3及以上版本。
Microsoft.Net.Compilers只支持MSBuild v16.3及以上版本。
当我第一次在Visual Studio 2019上打开我的一个项目时,我遇到了这个问题。这是一个我大约三年前创建的项目,每年只需要做一些小改动。\n第一次在Visual Studio 2019上尝试编译这个项目时,我收到了一个与csc.exe文件相关的错误,并且由于我之前遇到过这个错误,我在Nuget包管理器中重新安装了编译器组件,就像之前那样成功地做过。\n之后,我收到了错误提示\"Microsoft.Net.Compilers仅支持MSBuild v16.3及以上版本\"。\n我在Microsoft Developer Community上找到了一些解决方案,建议打开并编辑文件:\"packages\\Microsoft.Net.Compilers.3.4.0\\build\\Microsoft.Net.Compilers.props\",但对我来说这似乎有点奇怪。
问题的原因是Microsoft.Net.Compilers只支持MSBuild v16.3及以上版本。解决方法是卸载并重新安装最新的稳定版本的两个组件:Microsoft.CodeDom.Providers.DotNetCompilerPlataform v2.0.1和Microsoft.Net.Compilers v3.4.0。通过这样做,问题得以解决。其他用户也可以采用这种方法来解决类似的问题。另外,有用户提到在将VS2017项目移植到VS2019时遇到了相同的错误,在本地工作正常,但在发布时出现错误。他尝试在调试模式和发布模式下多次重新构建项目,问题似乎也得到了解决。还有一个用户问到为什么需要同时安装这两个组件,他认为这两个组件是构建系统,只需要选择其中一个即可。对此,有用户回答说Microsoft.CodeDom.Providers.DotNetCompilerPlatform曾经依赖于Microsoft.Net.Compilers,但在2.0.1版本中取消了这个依赖关系。然而,2.0.1版本自2018年以来没有更新,而Microsoft.Net.Compilers似乎在22天前刚刚更新。所以现在应该使用哪个呢?这些似乎是互斥的包,过去有一个是最佳选择,然后是另一个,现在又是Microsoft.Net.Compilers是最新和最好的选择。对此,有用户回答说他不清楚,而且由于其他任务需要继续进行项目开发,他无法深入研究。如果这个问题再次出现,他将有机会尝试只使用其中一个组件。
问题:(Microsoft.Net.Compilers is only supported on MSBuild v16.3 and above) 的出现的原因以及解决方法
近期在使用 Microsoft.Net.Compilers 版本时,可能会遇到一个问题,即 (Microsoft.Net.Compilers is only supported on MSBuild v16.3 and above)。这个问题的出现是由于 Microsoft.Net.Compilers 版本与 MSBuild 版本不兼容所导致的。
解决方法是升级 Microsoft.Net.Compilers 的 nuget 包至版本 3.5.0-beta2-final,这样问题就可以解决了。
要解决这个问题,只需执行以下步骤:
1. 打开项目中的 NuGet 包管理器。
2. 在 NuGet 包管理器中,找到并选择 Microsoft.Net.Compilers 包。
3. 单击 "更新" 按钮,将 Microsoft.Net.Compilers 包升级到版本 3.5.0-beta2-final。
4. 确认升级,并等待 NuGet 包管理器完成升级过程。
5. 完成后,重新构建项目。
通过升级 Microsoft.Net.Compilers 版本,将解决 (Microsoft.Net.Compilers is only supported on MSBuild v16.3 and above) 这个问题,使项目能够正常工作。
希望以上解决方法对您有所帮助!