Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Команда dnx не найдена в командной строке разработчика для VS2015

Автор вопроса: TugboatCaptainОтветов: 3

Только что установил Visual Studio 2015 RC, и когда я открываю Developer command prompt for VS2015 и ввожу dnx, он говорит:

"dnx" не распознается как внутренняя или внешняя команда, исполняемая программа или пакетный файл.

Заметьте, через два дня я обнаружил, что если я наберу dnvm use default, он добавит путь к моей переменной среды, чтобы можно было найти команду dnx. Это сохраняется только до тех пор, пока открыто текущее окно.

Почему инфраструктура .net 5 по умолчанию не добавляется автоматически в переменную среды PATH для меня?

visual-studio-2015

Ответы

Ответ 1 · рейтинг 69 · nZeus

В моем случае dnvm use default -p не сработало. Но это помогло:

dnvm upgrade
dnu restore

Ответ 2 · рейтинг 25 · Victor Hurdugaci

Запустите dnvm use default -p, чтобы сохранить изменения в переменной среды.

Ответ 3 · рейтинг 15 · tomRedox

Хотя поведение странное, то, что вы видите, является дизайном. Идея состоит в том, чтобы позволить вам одновременно запускать несколько версий ASP.NET 5 в разных сеансах командной строки и устанавливать новую версию ASP.NET 5, не нарушая работу существующих сайтов, ориентированных на другую версию.

Причина поведения, которое вы видите с dnvm use default, заключается в том, что dnvm use default устанавливает PATH по умолчанию только для этой командной строки, тогда как dnvm use default -p устанавливает PATH по умолчанию для пользователя.

Чтобы запустить весь процесс и посмотреть, что происходит, сначала выполните:

dnvm upgrade

Это позволит получить самую последнюю версию ASP.NET 5 и установить ее по умолчанию для этого сеанса командной строки.

Затем вы можете перечислить все версии ASP.NET 5, установленные на вашем компьютере, следующим образом:

dnvm list

Затем вы можете установить один из элементов в этом списке по умолчанию, например. (Примечание: фактическая версия может отличаться в зависимости от того, когда вы просматриваете этот ответ):

dnvm use 1.0.0-rc1-update1 -r clr -arch x64 -p

-p в конце означает "сохранять", и это параметр, который затем сохранит значение по умолчанию, которое вы только что выбрали, как для PATH процесса (сеанса), так и для переменной PATH пользователя. Сохранение пользовательского PATH означает, что значение по умолчанию будет доступно во всех командных строках.

Если вы пропустите -p, вы можете выбрать версию только для использования в этом сеансе командной строки.

После этого вы сможете использовать dnx, как и ожидалось.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы