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

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

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

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

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


person TugboatCaptain    schedule 25.05.2015    source источник


Ответы (3)


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

dnvm upgrade
dnu restore
person nZeus    schedule 12.11.2015
comment
Большое спасибо за ценное примечание. Эта работа для меня, а другой ответ кажется старым. - person Bashar Abu Shamaa; 16.12.2015
comment
мне просто нужно: обновление dnvm - person ManyRootsofAllEvil; 08.05.2016

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

person Victor Hurdugaci    schedule 25.05.2015
comment
Спасибо, это позволяет ему сохраняться. Но почему он не используется по умолчанию для чистой установки VS 2015, не имеет смысла. Может быть, это часть того, что еще осталось отполировать перед выпуском финального продукта? В конце концов, это именно то, для чего предназначена командная строка разработчика, чтобы настроить эти грязные низкоуровневые вещи для меня, чтобы я мог немедленно приступить к работе. - person TugboatCaptain; 25.05.2015
comment
Думаю, это действительно будет в релизе продукта: twitter.com/shanselman/status/603638195167854592 - person Andrew; 27.05.2015
comment
если эта команда возвращает значение Не удается найти xxx.default..., сначала запустите обновление dnvm, а затем попробуйте. - person Jez; 23.12.2015
comment
Если вы получаете сообщение об ошибке «запуск скрипта в этой системе отключен», вам нужно запустить Set-ExecutionPolicy RemoteSigned в Powershell (который должен быть запущен от имени администратора) — см. stackoverflow.com/a/4038991/16940 - person Simon_Weaver; 04.04.2016

Хотя поведение странное, то, что вы видите, является дизайном. Идея состоит в том, чтобы позволить вам одновременно запускать несколько версий 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, как и ожидалось.

person tomRedox    schedule 14.01.2016