无法生成用于构建和调试的资源。 OmniSharp 服务器未运行

问题描述 投票:0回答:12

在 Visual Studio (VS) Code 上,使用 C# 进行编码。我正在尝试生成要构建和调试的资产,但收到以下错误消息:无法生成要构建和调试的资产。 OmniSharp 服务器未运行。

我正在跑步:

  • .NET版本3.1.301
  • Windows 8.1
  • Visual Studio Code 1.46.1(用户设置)
  • Powershell 5.1

到目前为止,我已尝试卸载 VS 代码和 C# 扩展,我将settings.json 中的omnisharp.path 更新为latest,并更新了powershell 版本。

我尝试生成用于构建和调试的资产的代码确实运行,因此我不确定还应该在哪里寻找问题的根源。

如果您需要更多详情,请随时询问

c# visual-studio-code code-generation omnisharp
12个回答
11
投票

CTRL + SHIFT + P

命令的使用:

OmniSharp: Restart OmniSharp

为我工作


5
投票

这对我有用:

Ctrl + Shift + P

然后输入命令:

OmniSharp: Select Project


5
投票

安装 C# 扩展,安装后单击卸载按钮一侧的箭头,然后单击安装另一个版本。首先我尝试了 2 个月前的一个,它不起作用,然后我尝试了 6 个月前的一个,它完美地工作了!


4
投票
  1. 已将

    omnisharp.json
    文件添加到根文件夹,内容如下:

    { "msbuild": { "useBundledOnly": true } }
    
  2. 使用 Ctrl + Shift + P 选择命令面板,然后选择选项 “OmniSharp:重新启动 Omnisharp”

  3. 使用命令面板,选择选项“NET:生成用于调试和构建的资源

  4. launch.json
    tasks.json
    文件将添加到
    .vscode
    文件夹下

  5. 现在您应该能够调试代码了

这个解决方案对我有用。


3
投票

最终发现了问题。 我需要将 PATH 变量添加到系统变量中的 C:\Windows\System32 中。现在它按预期工作了。

添加变量取决于您的 Windows 版本。您应该能够找到有关将路径添加到环境变量的指南。这是Microsoft 的指南

至于您需要添加哪个路径变量,它将类似于:C:\Windows\System32\WindowsPowerShell .1.0


1
投票

完全退出 VS Code。

重新安装 C# 扩展。

重新生成 C# 调试资源。将会出现提示,或者您可以通过

手动执行此操作


0
投票

我在使用 .NET 2.1 时遇到了这个问题。

请注意,C# for VS Code Extension (OmniSharp) 现在需要 .NET 6 SDK 或更高版本或完整的框架运行时和 MSBuild 工具。 参见要求部分

将扩展设置

omnisharp.useModernNet
设置为
false
并安装 Mono 后,我能够生成资产以使用 VS Code 扩展正常构建和调试。


0
投票

我使用 dotnet CLI 创建了 .net 项目,并从“code”开始。命令。 但不知何故,omnisharp 并不能解决这个问题。

我的问题就这样解决了;

我转到了我创建的文件。 我将该文件拖到 Visual Studio Code 并启动。

而且成功了:)


0
投票

在 VS code 中的扩展下 - 单击“卸载”按钮上的箭头 -> 安装另一个版本,然后选择第二个最新版本为我修复了此问题。


0
投票

Install Another Version 单击“卸载”下的安装另一个版本并执行重新加载窗口。 Reload window 然后会出现一个弹出窗口,询问所需的资产。 required assets 单击“是”


0
投票

我将把这个作为答案发布,因为我遇到了这个错误并且不明白是什么原因造成的。作为初学者,我尝试创建一个新的 .cs 文件并运行它。看起来,创建 .cs 文件并在 VSCode 内使用 dotnet 运行它的正确方法是:

  1. 打开控制台到您要运行文件的文件夹
  2. 使用 dotnet SDK 使用命令
    dotnet new console -o app
    创建一个新的 .cs 项目(其中“app”是项目的名称)
  3. 使用控制台进入项目并在其中打开 VSCode(例如
    cd .\app
    ,然后运行
    code .
  4. 为了运行您的 .cs 文件,请在之前打开的终端或在 VSCode 中打开的新终端中运行此命令 (
    dotnet run
    )

Omnisharp 现在应该能够在 .vscode 文件内生成必要的“.json”,以便使用

CTRL + SHIFT + P
进行调试,然后使用
.NET: Generate Assets for Build and Debug

希望这有帮助。 附:这是我关于堆栈溢出的第一篇文章


0
投票

我尝试了许多这些解决方案和其他解决方案,但没有成功,但我无意中偶然发现了一个非常简单的解决方案,

我安装了 C# 开发工具包,现在每当我需要生成资产时,我只需禁用它,它会提示重新启动,然后当我单击它时,它会询问我是否要生成资产。

我尝试过重新启动其他方法,包括禁用其他扩展或 ctrl shf p restart,但没有其他方法会提示我添加丢失的资产,希望这可以帮助任何遇到此问题的人

© www.soinside.com 2019 - 2024. All rights reserved.