'версию' не признается, но другие команды NuGet для работы


Я пытаюсь создать пакет nuget с помощью http://docs.nuget.org/docs/creating-packages/creating-and-publishing-a-package#From_a_convention_based_working_directory в качестве ссылки. Моя консоль управления пакетами в Visual Studio не позволяет мне использовать команду "nuget". Я могу "получить-помощь nuguet", и он отображает:

включены следующие командлеты NuGet.

    Cmdlet                  Description
    ------------------      ----------------------------------------------
    Get-Package             Gets the set of packages available from the package source.

    Install-Package         Installs a package and its dependencies into the project.

    Uninstall-Package       Uninstalls a package. If other packages depend on this package, 
                            the command will fail unless the –Force option is specified.

    Update-Package          Updates a package and its dependencies to a newer version.

    Add-BindingRedirect     Examines all assemblies within the output path for a project
                            and adds binding redirects to the application (or web) 
                            configuration file where necessary.

    Get-Project             Returns a reference to the DTE (Development Tools Environment) 
                            for the specified project. If none is specifed, returns the 
                            default project selected in the Package Manager Console.

    Open-PackagePage        Open the browser pointing to ProjectUrl, LicenseUrl or 
                            ReportAbuseUrl of the specified package.

    Register-TabExpansion   Registers a tab expansion for the parameters of a command.
  • однако, всякий раз, когда я начинаю команды с nuget дает :

термин "nuget" не распознается как имя командлета, функции, файла сценария или действующей программы. Проверьте правильность написания имени, или если путь был включен, убедитесь, что путь указан правильно, и попробуйте АГ - Айн.

в строке:1 знак:6 + из NuGet

Я пробовал следующие решения:

1 > закрытие всех элементов и перезапуск

2 > удаление и переустановка

3 > создание файла профиля powershell (это не существовало раньше, и это фактически сломало все)

проблема начала появляться после того, как я обновил свою пробную версию Visual Studio 2012 Ultimate до зарегистрированной. Первоначально у меня был установлен VS 12 Pro. Я не знаю, действительно ли это имеет какое-то отношение к этому, но я заметил, что другие, которые имели аналогичные проблемы имеют vs 10 и 12 установлены.

мой вопрос: "кто-нибудь знает, что еще попробовать?"Моя теория заключается в том, что путь к команде nuget отсутствует, но я не могу найти, как настроить пути, используемые консолью диспетчера пакетов, и я не уверен, где на самом деле хранится командлет nuget.

Обновлено - - - попробовал загрузить инструмент командной строки, как показано ниже. Это приводит к тому, что снова ничего не работает. Я попытался удалить и теперь у меня есть пункт в vs2010 расширения для nuget, для которых не включена кнопка install или unistall. Это заставляет меня думать, что это связано с расширениями, установленными через 2010 и 2012 годы, которые имеют участие в моей маленькой драме. Если кто-нибудь также знает, как nuke неустановленное расширение, пожалуйста, посоветуйте также, но я попробую другой вопрос для этого.

8 79

8 ответов:

вы также можете попробовать установить путь к системной переменной в местоположение вашего NuGet exe и перезапустить VS.

  1. Открытые системы PATH переменная и добавить расположение вашего nuget.exe (для меня это:C:\Program Files (x86)\NuGet\Visual Studio 2013)
  2. Перезапустить Visual Studio

Я бы написал это как комментарий к вашей ответ @done_merson но у меня не было необходимой репутации, чтобы сделать это.

Nuget.ехе находится в .nuget папка вашего проекта. Он не может быть выполнен непосредственно в консоли диспетчера пакетов, но выполняется командами Powershell, поскольку эти команды создают пользовательский путь для себя.

мои шаги, чтобы решить:


обновление

NuGet может быть легко установлен в вашем проекте с помощью следующей команды:

Установить-Пакет Из NuGet.Командная строка

есть гораздо более приятные способы сделать это.

  1. Установить Nuget.Создайте пакет в проекте, который вы хотите упаковать. Возможно, потребуется закрыть и повторно открыть решение после установки.
  2. установить nuget через chocolatey-гораздо приятнее. Установите chocolatey:https://chocolatey.org/, затем бегите

    ВШЭ NuGet для.Командная строка

в командной строке. Это позволит установить NuGet и настройка среды пути, так что NuGet-это всегда имеющийся.

на [Package Manager Console] попробуйте ниже

Install-Package NuGet.CommandLine

инструмент командной строки nuget не поставляется с файлом vsix, это отдельная загрузка

https://github.com/nuget/home

  • щелкните правой кнопкой мыши на вашем проекте в обозреватель.
  • выберите Управление пакетами NuGet для решения.
  • Поиск NuGet.Командная строка Microsoft и установить его. Search Nuget.CommandLine
  • по завершении установки вы найдете папку с именем пакетов in ваш проект. Перейдите в Обозреватель решений и найдите его. packages
  • внутри пакетов искать папка с именем NuGet.командная строка.3.5.0, здесь 3.5.0-это просто имя версии, имя вашей папки изменится соответствующим образом. nuGet COmmand Line
  • внутри NuGet.командная строка.3.5.0 найдите папку с именем инструменты. tools
  • внутри инструменты вы получаете nuget.exe nuget.exe

В Visual Studio:

Tools -> Nuget Package Manager -> Package Manager Console.

в PM:

Install-Package NuGet.CommandLine

закрыть Visual Studio и откройте его снова.

Я обошел это, найдя nuget.exe и переход к простому пути ввода (c:\nuget\nuget) и затем вызов nuget с этим путем. Это, кажется, решает проблему. c:\nuget\nuget на консоли диспетчера пакетов работает как положено. Я попытался найти путь, который использует консоль, и изменить путь среды, но никогда не мог заставить его работать таким образом.