VS Code / OmniSharp - 如何显式设置 dotnet SDK / CLI 工具的路径
VS Code / OmniSharp - how to set path to dotnet SDK / CLI tools explicitly
我正在使用 Visual Studio 代码。在我的机器上,我有两个单独安装的 Net Core SDK / dotnet CLI 工具;
标准路径 (%ProgramFiles%\dotnet) 中的过时版本 (netcore 1.1);以及安装到不同的自定义路径 (%AppData%...)
的最新版本 (netcore 2.0)
我需要 Visual Studio Core - 因此,Omnisharp - 才能使用最近的自定义安装。不幸的是,由于我的机器设置,默认的 "dotnet" 命令已注册到过时的安装中,我无法更改它。 Omnisharp 也在同一位置使用 SDK。
现在,非管理员用户是否可以通过任何方式在 Visual Studio 代码/Omnisharp 中指定从我的自定义位置使用 dotnet 工具?任何特定的配置设置或类似设置?
有关上下文,关于为什么我的机器有如此奇怪的设置以及为什么我对此无能为力,请参阅 Cmd precedence: How to use correct dotnet.exe when installed in 2 locations?
谢谢
现在找到了一些解决方法,我创建了一个 bat 来启动 Visual Studio 代码,在其中我在执行时覆盖了 PATH 环境变量并删除了过时的路径。
这现在对我有用,但我会保持打开状态以防有更好的解决方案,例如 OmniSharp 的直接配置等
跟随 Bogey 于 2018-02-16 的领导,在按照 https://docs.microsoft.com/en-us/dotnet/core/install/windows?tabs=netcore31#download-and-manually-install, when I was then following the tutorial at https://docs.microsoft.com/en-us/dotnet/core/tutorials/with-visual-studio-code 手动安装 SDK 后,我不断收到消息弹出或在 Visual Studio 代码的终端中说类似
It was not possible to find any installed .NET Core SDKs
Did you mean to run .NET Core SDK commands? Install a .NET Core SDK from:
https://aka.ms/dotnet-download
但是使用批处理文件,我在启动代码之前在其中设置了 PATH 环境变量,我能够 运行 教程中的命令,例如 dotnet new console
,成功。
我创建的批处理文件将 PATH 设置为正常情况(即,如 运行ning echo %PATH%
在命令提示符处显示的那样),但引用了未手动安装的 SDK由我删除并参考我手动添加的SDK安装。大致:
set PATH=C:\Program Files (x86)\various\things;C:\WINDOWS\other\things;C:\Users\user1930469\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\user1930469\my_manually_installed_sdk\dotnet
start "" "C:\Users\user1930469\AppData\Local\Programs\Microsoft VS Code\Code.exe"
exit
使用 Visual Studio 代码然后打开,我可以使用
在代码的终端中确认 PATH 变量的值
$env:path
并成功地运行命令
dotnet --help
谢谢你的提示,柏忌。
1 - 安装相应的 .Net SDK(点击获取 sdk)
2 - 安装相应的 .Net 开发人员包(从输出日志中查看)
3 - 关闭 vscode
4 - 使用“code”命令从 terminal/cmd 打开 VSCode
我正在使用 Visual Studio 代码。在我的机器上,我有两个单独安装的 Net Core SDK / dotnet CLI 工具; 标准路径 (%ProgramFiles%\dotnet) 中的过时版本 (netcore 1.1);以及安装到不同的自定义路径 (%AppData%...)
的最新版本 (netcore 2.0)我需要 Visual Studio Core - 因此,Omnisharp - 才能使用最近的自定义安装。不幸的是,由于我的机器设置,默认的 "dotnet" 命令已注册到过时的安装中,我无法更改它。 Omnisharp 也在同一位置使用 SDK。
现在,非管理员用户是否可以通过任何方式在 Visual Studio 代码/Omnisharp 中指定从我的自定义位置使用 dotnet 工具?任何特定的配置设置或类似设置?
有关上下文,关于为什么我的机器有如此奇怪的设置以及为什么我对此无能为力,请参阅 Cmd precedence: How to use correct dotnet.exe when installed in 2 locations?
谢谢
现在找到了一些解决方法,我创建了一个 bat 来启动 Visual Studio 代码,在其中我在执行时覆盖了 PATH 环境变量并删除了过时的路径。
这现在对我有用,但我会保持打开状态以防有更好的解决方案,例如 OmniSharp 的直接配置等
跟随 Bogey 于 2018-02-16 的领导,在按照 https://docs.microsoft.com/en-us/dotnet/core/install/windows?tabs=netcore31#download-and-manually-install, when I was then following the tutorial at https://docs.microsoft.com/en-us/dotnet/core/tutorials/with-visual-studio-code 手动安装 SDK 后,我不断收到消息弹出或在 Visual Studio 代码的终端中说类似
It was not possible to find any installed .NET Core SDKs
Did you mean to run .NET Core SDK commands? Install a .NET Core SDK from:
https://aka.ms/dotnet-download
但是使用批处理文件,我在启动代码之前在其中设置了 PATH 环境变量,我能够 运行 教程中的命令,例如 dotnet new console
,成功。
我创建的批处理文件将 PATH 设置为正常情况(即,如 运行ning echo %PATH%
在命令提示符处显示的那样),但引用了未手动安装的 SDK由我删除并参考我手动添加的SDK安装。大致:
set PATH=C:\Program Files (x86)\various\things;C:\WINDOWS\other\things;C:\Users\user1930469\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\user1930469\my_manually_installed_sdk\dotnet
start "" "C:\Users\user1930469\AppData\Local\Programs\Microsoft VS Code\Code.exe"
exit
使用 Visual Studio 代码然后打开,我可以使用
在代码的终端中确认 PATH 变量的值$env:path
并成功地运行命令
dotnet --help
谢谢你的提示,柏忌。
1 - 安装相应的 .Net SDK(点击获取 sdk)
2 - 安装相应的 .Net 开发人员包(从输出日志中查看)
3 - 关闭 vscode
4 - 使用“code”命令从 terminal/cmd 打开 VSCode