【问题标题】:DNX does not workDNX 不工作
【发布时间】:2016-02-18 01:36:42
【问题描述】:

我已经在 windows server 2008 上成功安装了 dnvm。 但是当我运行“dnx”时,什么也没显示。没有这样的错误信息:

C:\Windows\system32\dnx
C:\Windows\system32\

有人遇到过同样的问题吗?

【问题讨论】:

    标签: dnx


    【解决方案1】:

    首先你需要了解 DNX 的结构。默认情况下,它安装在%USERPROFILE%\.dnx 中。在其中您应该找到包含所有已安装 CLR 的 runtimes 文件夹,例如

    • dnx-clr-win-x86.1.0.0-beta4
    • dnx-clr-win-x86.1.0.0-beta6-11938

    它们每个都有自己的bin 文件夹,其中包含dnx.exednu.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

    【讨论】:

      【解决方案2】:

      安装 DNVM 并不意味着您也安装了 DNX。运行以下命令获取最新的稳定版本:

      dnvm upgrade
      

      那么你应该可以运行dnxdnu

      【讨论】:

      • 我试过了。不工作。运行“dnvm 升级”后 dnx 不起作用
      【解决方案3】:

      您可以在同一台机器上同时运行不同版本的 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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-06-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多