【发布时间】:2016-02-18 01:36:42
【问题描述】:
我已经在 windows server 2008 上成功安装了 dnvm。 但是当我运行“dnx”时,什么也没显示。没有这样的错误信息:
C:\Windows\system32\dnx
C:\Windows\system32\
有人遇到过同样的问题吗?
【问题讨论】:
标签: dnx
我已经在 windows server 2008 上成功安装了 dnvm。 但是当我运行“dnx”时,什么也没显示。没有这样的错误信息:
C:\Windows\system32\dnx
C:\Windows\system32\
有人遇到过同样的问题吗?
【问题讨论】:
标签: dnx
首先你需要了解 DNX 的结构。默认情况下,它安装在%USERPROFILE%\.dnx 中。在其中您应该找到包含所有已安装 CLR 的 runtimes 文件夹,例如
它们每个都有自己的bin 文件夹,其中包含dnx.exe 和dnu.cmd。这些是您正在寻找的。所以基本上在执行dnvm upgrade 之后(@tugberk 建议)DNVM 从提要安装最新的 DNX,将其标记为默认值并将其添加到用户的 PATH 变量中。您的 PATH 可能由于某种原因尚未更新,我建议您通过包含所需 CLR 版本的路径来手动更新。
还可以通过添加 -g 标志将 CLR 安装到机器范围的位置。
尝试运行后:C:\>dnx
输出:
Microsoft .NET Execution environment CLR-x86-1.0.0-beta6-11938
Usage: dnx [options] ...
关于 DNVM 的详细文档 - ASP.NET Home / Version Manager
【讨论】:
安装 DNVM 并不意味着您也安装了 DNX。运行以下命令获取最新的稳定版本:
dnvm upgrade
那么你应该可以运行dnx 和dnu。
【讨论】:
您可以在同一台机器上同时运行不同版本的 dnvm,因此安装程序不会在用户的 PATH 变量中设置 dnx 的值作为安装的一部分,因为如果您已经安装了另一个版本的 dnvm,那使用现有版本可能会导致意外结果。
如果您想看看发生了什么,请执行以下操作(转述自 another answer I wrote on this issue):
先做:
dnvm upgrade
这将获取最新版本的 dnvm 并将其设置为该命令提示符会话的默认值。
然后你可以列出你机器上安装的所有 ASP.NET 5 的版本如下:
dnvm list
然后,您可以将该列表中的一项设置为默认值,例如(注意:实际版本可能会有所不同,具体取决于您查看此答案的时间):
dnvm use 1.0.0-rc1-update1 -r clr -arch x64 -p
最后的-p 表示“持久”,该设置会将您刚刚选择的默认设置保留到进程(会话)PATH 和用户PATH 变量中。坚持用户 PATH 意味着默认值在任何地方都可用。
如果您不使用 -p,那么您可以选择一个仅用于该命令提示符会话的版本。
之后,您应该可以按预期使用dnx。
【讨论】: