Windows Cmd优先级:在两个位置安装时如何使用正确的dotnet.exe?

Windows Cmd优先级:在两个位置安装时如何使用正确的dotnet.exe?,windows,cmd,.net-core,Windows,Cmd,.net Core,不久前,我手动安装了dotnet core 2.1.2 SDK,方法是将其解压缩到我的%AppData%文件夹中,并将其位置添加到PATH环境变量中。 这很好,我可以通过cmd调用dotnet命令,VS代码可以找到正确的位置 最近,我安装了Visual Studio 2017,它将net core 1.1 SDK安装到%ProgramFiles%\dotnet。 尽管此特定路径未在path变量中注册,但默认情况下,此文件夹中的dotnet.exe似乎已被使用 或者换句话说,当我打开cmd.exe

不久前,我手动安装了dotnet core 2.1.2 SDK,方法是将其解压缩到我的%AppData%文件夹中,并将其位置添加到PATH环境变量中。 这很好,我可以通过cmd调用dotnet命令,VS代码可以找到正确的位置

最近,我安装了Visual Studio 2017,它将net core 1.1 SDK安装到%ProgramFiles%\dotnet。 尽管此特定路径未在path变量中注册,但默认情况下,此文件夹中的dotnet.exe似乎已被使用

或者换句话说,当我打开cmd.exe并键入“where dotnet”时,我会看到两个位置:

  • %ProgramFiles%\dotnet\dotnet.exe(Vs2017安装的1.1 SDK)
  • %AppData%..\dotnet\dotnet.exe-即我手动解压缩的2.1.2 SDK
  • 当我运行“dotnet--version”时,我看到了1.1.0,因此默认的dotnet命令似乎与%ProgramFiles%文件夹中的旧1.1版本相关联

    如何更改优先级?例如,如何将dotnet命令与自定义文件夹关联

    我应该注意到我是在非管理员windows帐户上运行的。我自己无法更改%ProgramFiles%文件夹中的任何内容(因此无法将较新的SDK复制到该文件夹,或删除/更改旧的SDK)


    谢谢

    尝试更改%PATH%环境变量,使其仅包含一个.NET文件夹。

    尝试更改%PATH%环境变量,使其仅包含一个.NET文件夹。

    在目录层次结构中的任何位置都有
    全局.json
    吗?(有关更多信息,请参见[Global Global.json])到目前为止还没有。我可以添加一个,但外观上只允许指定/强制某个SDK版本,但首先不允许指定SDK(或dotnet.exe)的路径-即,如果我试图强制SDK版本2.1.2,它仍然会在%ProgramFiles%\dotnet目录中查找(未安装2.1.2 SDK的情况下)?一旦正确安装(即通过[dot.net/core](dot.net/core)上提供的安装程序),不同版本的SDK将并行运行(除非找到global.json)将使用最新安装的SDK版本。我想说的是,您应该通过安装程序安装SDK,而不是完全手动解压缩它-但不幸的是,我不能这样做,因为此处的非管理员帐户如果
    ,其中
    报告了这两个(2)位置,很难相信它们都不在
    PATH
    中。请将cmd shell中
    PATH
    命令的文本输出复制并粘贴到问题中。在目录层次结构中的任何位置都有
    global.json
    (有关详细信息,请参阅[global global.json])到目前为止还没有。我可以添加一个,但从外观上看,它只允许指定/强制某个SDK版本,但不允许首先指定SDK(或dotnet.exe)的路径-即,如果我试图强制SDK版本2.1.2,它仍然会在%ProgramFiles%\dotnet目录中查找(其中未安装2.1.2 SDK)?正确安装后(即通过[dot.net/core](dot.net/core)上提供的安装程序),不同版本的SDK将并行运行(除非找到global.json)将使用最新安装的SDK版本。我想说的是,您应该通过安装程序安装SDK,而不是完全手动解压缩它-但不幸的是,我不能这样做,因为此处的非管理员帐户如果
    ,其中
    报告了这两个(2)位置,很难相信它们都不在
    路径
    中。请复制并将cmd shell中
    路径
    命令的文本输出粘贴到问题中。不幸的是,不可能-%ProgramFiles%one位于系统路径变量上,我无法作为此机器上的非管理员用户对此进行更改Unattally-%ProgramFiles%one位于系统路径变量上,作为此计算机上的非管理员用户,我无法更改该变量