使 DNVM 使用全局设置(机器)
Make DNVM use setting global (machine)
根据"Version Manager" documentation (dnvm, ref: https://github.com/aspnet/Home/wiki/Version-Manager)我应该能够在使用命令use
.
时提供-g
或-global
参数
文档:
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
我哪里做错了,或者我误解了文档?
您没有通过管道传输 DNX 的路径,文档指定您必须执行此操作才能添加计算机路径。请试一试,如果不行请告诉我们。
dnvm
的选项将在每个测试版中更改。您应该小心使用 the wiki or the documentation,因为该信息并不总是对应于 dnvm
.
的 current 版本
如果您不带参数或使用 version
参数 (dnvm version
) 启动 dnvm
,您将看到 .NET 版本管理器的当前版本。这是 v1.0.0-rc2-15546
在我身上。如果你有更旧的版本,你可以使用 dnvm update-self
更新它。它使用 dnvm.ps1 from https://github.com/aspnet/Home/ 进行自我更新。
您可以使用dnvm help use
查看当前安装的.NET版本管理器的use
命令的选项。这是
在我现在的电脑上。因此 dnvm use
不应该支持 -g
选项。
总的来说dnvm use
做的事情很简单。您可以在计算机上检查 %USERPROFILE%\.dnx\runtimes
的文件夹。您将看到 dnx-clr-win-x64.1.0.0-rc1-update1
、dnx-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
例如 dnvm install
存在开关 -g
。您可以验证您没有某些 dnx 版本或卸载它,然后您可以使用 -g
开关安装该版本。
例如
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
确实支持-g
开关,但不支持dnvm use
。
根据"Version Manager" documentation (dnvm, ref: https://github.com/aspnet/Home/wiki/Version-Manager)我应该能够在使用命令use
.
-g
或-global
参数
文档:
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
我哪里做错了,或者我误解了文档?
您没有通过管道传输 DNX 的路径,文档指定您必须执行此操作才能添加计算机路径。请试一试,如果不行请告诉我们。
dnvm
的选项将在每个测试版中更改。您应该小心使用 the wiki or the documentation,因为该信息并不总是对应于 dnvm
.
如果您不带参数或使用 version
参数 (dnvm version
) 启动 dnvm
,您将看到 .NET 版本管理器的当前版本。这是 v1.0.0-rc2-15546
在我身上。如果你有更旧的版本,你可以使用 dnvm update-self
更新它。它使用 dnvm.ps1 from https://github.com/aspnet/Home/ 进行自我更新。
您可以使用dnvm help use
查看当前安装的.NET版本管理器的use
命令的选项。这是
在我现在的电脑上。因此 dnvm use
不应该支持 -g
选项。
总的来说dnvm use
做的事情很简单。您可以在计算机上检查 %USERPROFILE%\.dnx\runtimes
的文件夹。您将看到 dnx-clr-win-x64.1.0.0-rc1-update1
、dnx-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
例如 dnvm install
存在开关 -g
。您可以验证您没有某些 dnx 版本或卸载它,然后您可以使用 -g
开关安装该版本。
例如
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
确实支持-g
开关,但不支持dnvm use
。