繁体   English   中英

使用.Net Core SDK 3.0预览错误Visual Studio代码和Omnisharp扩展

[英]Error Visual Studio Code and Omnisharp Extension with .Net Core SDK 3.0 preview

如何在Visual Studio代码中修复.Net Core 3.0项目中的错误?

我已经在一个文件夹中使用dotnet new命令从创建的新项目下载了.NET Core 3.0 SDK。

使用Visual Studio Code打开项目会出现以下错误:

[fail]:OmniSharp.MSBuild.ProjectLoader当前的.NET SDK不支持以.NET Core 3.0为目标。 可以是.NET Core 2.2或更低版本,也可以使用支持.NET Core 3.0的.NET SDK版本。 [warn]:OmniSharp.MSBuild.ProjectManager无法加载项目文件'c:\\ Users \\ Marco \\ source \\ Workspaces \\ WebDevelopment \\ Samples \\ hello-world \\ hello-world.csproj'。 c:\\ Users \\ Marco \\ source \\ Workspaces \\ WebDevelopment \\ Samples \\ hello-world \\ hello-world.csproj C:\\ Program Files \\ dotnet \\ sdk \\ 2.2.102 \\ Sdks \\ Microsoft.NET.Sdk \\ targets \\ Microsoft。 NET.TargetFrameworkInference.targets(137,5):错误:当前的.NET SDK不支持以.NET Core 3.0为目标。 可以是.NET Core 2.2或更低版本,也可以使用支持.NET Core 3.0的.NET SDK版本。

[fail]:OmniSharp.MSBuild.ProjectManager尝试更新未加载的项目:c:\\ Users \\ Marco \\ source \\ Workspaces \\ WebDevelopment \\ Samples \\ hello-world \\ hello-world.csproj

不是解决方案,而是我的解决方法:

我有OmniSharp使用.NET CORE 3.0.100-preview3-010431 preview3-010431处理可视代码,麻烦似乎来自OmniSharp.MSBuild.Discovery.MSBuildLocator使用的MSBuild版本。

在Visual Code中,查看OmniSharp日志:

在此输入图像描述

不确定你会不会喜欢这个解决方案,但是在OmniShart日志中,我读到它使用的是Visual Studio 2017 MSBuild,并且因为我在VS 2017中遇到了.net Core Preview 3项目的问题,所以我安装了Visual Studio社区2019年RC。 我的代码.NET CORE 3.0适用于VS 2019,但我在Visual Code中使用OmniSharp时遇到了麻烦。 为了让它在可视代码中工作,我只需将C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Enterprise\\MsBuild重命名为C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Enterprise\\MSBuild.disabled ,在使用.NET Core的Visual Code上一切正常。

    Located 3 MSBuild instance(s)
        1: Visual Studio Enterprise 2017 15.9.28307.344 - "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin"
        2: Visual Studio Community 2019 16.0.28714.193 - "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin"
        3: StandAlone 15.0 - "c:\Users\JPB\.vscode\extensions\ms-vscode.csharp-1.17.1\.omnisharp\1.32.8\msbuild\15.0\Bin"
    Registered MSBuild instance: Visual Studio Enterprise 2017 15.9.28307.344 - "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin"

成为:

[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Located 2 MSBuild instance(s)
            1: Visual Studio Community 2019 16.0.28714.193 - "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin"
            2: StandAlone 15.0 - "c:\Users\JPB\.vscode\extensions\ms-vscode.csharp-1.17.1\.omnisharp\1.32.8\msbuild\15.0\Bin"
[info]: OmniSharp.MSBuild.Discovery.MSBuildLocator
        Registered MSBuild instance: Visual Studio Community 2019 16.0.28714.193 - "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin"

结论: Omnisharp似乎需要一个支持.net Core 3.0的MSBuild。 除了VS 2019之外,我无法在其他任何地方找到它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM