3

根据“版本管理器”文档(dnvm,参考:https ://github.com/aspnet/Home/wiki/Version-Manager ),我应该能够在使用命令时提供-gor参数。-globaluse

文档:

 dnvm use <semver>|<alias>|none [-x86][-x64] [-svr50][-svrc50] [-p|-persistent] [-g|-global]

    | add DNX bin to path of current command line
    none remove DNX bin from path of current command line
    -p|-persistent add DNX bin to PATH environment variables persistently
    -g|-global combined with -p to change machine PATH instead of user PATH

然而,当我执行此操作时,我收到以下错误:

C:\Repos\X\AbsenceRequests\AbsenceRequests\AbsenceRequests.Data.EF>dnvm use 1.0.
0-rc1-update1 -p -g
Invoke-Command : A parameter cannot be found that matches parameter name 'g'.At
 C:\Users\OSCHELPEY\.dnx\bin\dnvm.ps1:1905 char:9
+         Invoke-Command ([ScriptBlock]::Create("dnvm-$cmd $cmdargs"))
+         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Invoke-Command], Parameter
   BindingException
    + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Comm
   ands.InvokeCommandCommand

我做错了什么,还是我误解了文档?

4

2 回答 2

4

的选项dnvm将在每个 beta 版本中更改。您应该小心使用wiki文档,因为这些信息并不总是dnvm.

如果您开始时dnvm没有参数或使用version参数 ( dnvm version),您将看到 .NET 版本管理器的当前版本。它v1.0.0-rc2-15546在我身上。如果您有更多旧版本,您可以使用dnvm update-self. 它使用来自https://github.com/aspnet/Home/的dnvm.ps1进行自我更新。

您可以使用dnvm help use查看use当前安装的 .NET 版本管理器的命令选项。它是

在此处输入图像描述

在我现在的电脑上。因此dnvm use不应该支持-g选项。

一般来说dnvm use,做非常简单的事情。您可以检查%USERPROFILE%\.dnx\runtimes计算机上的文件夹。您将看到类似的目录dnx-clr-win-x64.1.0.0-rc1-update1dnx-coreclr-win-x64.1.0.0-rc1-update1等等。目录中的每个人都有自己的dnx.exe%USERPROFILE%\.dnx\runtimes\dnx-coreclr-win-x64.1.0.0-rc1-update1\bin\dnx.exe例如。dnvm use只是改变用户PATH的当前命令行的PATH:

C:\Users\Oleg>dnvm use 1.0.0-rc1-update1 -a x64 -r coreclr -p
Adding C:\Users\Oleg\.dnx\runtimes\dnx-coreclr-win-x64.1.0.0-rc1-update1\bin to process PATH
Adding C:\Users\Oleg\.dnx\runtimes\dnx-coreclr-win-x64.1.0.0-rc1-update1\bin to user PATH

C:\Users\Oleg>dnvm use 1.0.0-rc1-update1 -a x64 -r coreclr
Adding C:\Users\Oleg\.dnx\runtimes\dnx-coreclr-win-x64.1.0.0-rc1-update1\bin to process PATH

例如,该开关-g存在于dnvm install. 您可以验证您没有某些 dnx 版本或将其卸载,然后您可以使用-gswitch 安装该版本。

在此处输入图像描述

例如

C:\Windows\System32>dnvm uninstall 1.0.0-rc1-final
Removed 'C:\Users\Oleg\.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-final'

C:\Windows\System32>dnvm install 1.0.0-rc1-final -g
Downloading dnx-clr-win-x86.1.0.0-rc1-final from https://www.nuget.org/api/v2
Installing to C:\ProgramData\Microsoft DNX\runtimes\dnx-clr-win-x86.1.0.0-rc1-final
Adding C:\ProgramData\Microsoft DNX\runtimes\dnx-clr-win-x86.1.0.0-rc1-final\bin to process PATH

您将看到 DNX 将安装在%ProgramData%\Microsoft DNX\runtimes而不是%USERPROFILE%\.dnx\runtimes.

因此dnvm确实支持-gswitch,但不支持dnvm use

于 2016-01-18T15:20:07.257 回答
-1

您尚未通过管道传输文档指定您必须执行的 DNX PATH 才能添加机器 PATH。请试试这个,如果这不起作用,请告诉我们。

于 2016-01-18T14:37:52.923 回答