Я пытаюсь использовать nopCommerce (который написан на .NET Core), но когда я хочу запустить проект, я сталкиваюсь с 52 ошибками, сообщающими мне Запустить восстановление пакета nuget
Файл активов ~ \ obj \ project. assets.json ' не найден. Запустите восстановление пакета NuGet, чтобы создать этот файл. Nop.Web.MVC.Testsote
когда я использую правой кнопкой мыши решение и выбираю Восстановить пакеты Nuget, я получаю это сообщение:
Все пакеты уже установлены и восстанавливать нечего.
но эти 52 ошибки все еще есть, и в разделе Инструменты -> Диспетчер пакетов NuGet -> Управление пакетами NuGet для решения на этом решении ничего не установлено, также я недавно обновил свой VS2017 до 15.5.4
nuget
visual-studio-2017
.net-core
nuget-package-restore
Никогда не доверяй
источник
источник
Ответы:
Чтобы исправить эту ошибку из Сервис> Диспетчер пакетов NuGet> Консоль диспетчера пакетов просто запустите:
Ошибка возникает из-за того, что dotnet cli изначально не создает все необходимые файлы. Выполнение восстановления dotnet добавляет необходимые файлы.
источник
dotnet restore solutionfilename.sln
В моем случае ошибка была в GIT-хранилище. В названии были пробелы, поэтому мой проект не удалось восстановить
Если это ваша проблема, просто переименуйте репозиторий GIT при клонировании
источник
В случае, если «восстановление dotnet» не работает, могут помочь следующие шаги:
источник
dotnet restore
сработало.Закрытие и повторное открытие Visual Studio решило эту проблему для меня, как только я убедился, что пакеты NuGet были восстановлены, как и другие ответы, опубликованные здесь.
Изменить: В некоторых случаях мне приходилось перезапускать Visual Studio сразу после другого перезапуска, поэтому не думайте, что перезапуск не поможет только потому, что вы недавно перезапустили.
источник
get
иbuild
и вы не раскрываем VS. Я знаю, почему он работает с VS - потому что VS автоматически разрешает зависимости проекта.Тем, у кого такая же проблема, как у меня в среде Azure DevOps / VSTS, встречается похожее сообщение:
C:\Program Files\dotnet\sdk\2.2.104\Sdks\Microsoft.NET.Sdk\targets\Microsoft.PackageDependencyResolution.targets(208,5): Error NETSDK1004: Assets file '...\obj\project.assets.json' not found. Run a NuGet package restore to generate this file
Добавьте
/t:Restore
к своим MSBuild Аргументы в Build Solution.источник
Для меня, когда я сделал - dotnet restore все еще ошибка происходила.
я пошел в
решенные вопросы.
источник
В visual studio 2017, пожалуйста, выполните следующие действия:
1) выберите Tool => Options => NuGet Package Manager => Источники пакетов, затем снимите флажок Microsoft Visual Studio Offline Packages Option.
2) Теперь откройте Tool => NuGet Package Maneger => Консоль диспетчера пакетов. 3) выполнить команду в PM> dotnet restore.
Надеюсь, что это работает ...
источник
Для меня я обновил NuGet.exe с 3.4 до 4.9, потому что 3.4 не понимает, как восстановить пакеты для .NET Core.
Для получения дополнительной информации см. Восстановление dotnet против восстановления nuget с teamcity
источник
.csproj
формат проекта.Выберите Инструменты > Диспетчер пакетов NuGet > Консоль диспетчера пакетов.
А затем запустить:
источник
немного поздно для ответа, но, кажется, это добавит ценность. Глядя на ошибку - кажется, это происходит в конвейере CI / CD.
Достаточно просто запустить «сборку dotnet».
DotNet build выполняет «восстановление» по умолчанию.
источник
Ничто из вышеперечисленного не помогло мне. Но простое удаление всех папок bin и obj помогло.
источник
Решается добавлением / t: Restore; Build to MSBuild Аргументы
источник
При использовании VSTS проверьте файл global.json. Я ввел версию SDK как просто «2.2», что вызвало ошибку разбора (но не при локальной сборке). Добавление полной версии «2.2.104» решило проблему.
источник
Я потерял несколько часов из-за этой ошибки в DevOps Azure, когда установил задачу Visual Studio Build в конвейере сборки, чтобы построить отдельный проект в моем решении, а не в целом решении.
Это означает, что DevOps либо не создает ни один (или, возможно, некоторые, я не уверен, какой) из проектов, на которые ссылается проект, на который вы нацелены для сборки, и, следовательно, эти проекты не будут иметь свой project.json. сгенерированные файлы .asset, которые затем вызывают эту проблему.
Решением для меня было переключиться с использования задачи VS Build на задачу MSBuild. Использование задачи MSBuild для отдельного проекта правильно создает все проекты, на которые ссылается создаваемый вами проект, и устраняет эту ошибку.
источник
Если эта ошибка возникает как часть сборки в Azure DevOps (TFS), и ваша сборка уже имеет задачу восстановления NuGet , эта ошибка может указывать на то, что задача восстановления NuGet не смогла восстановить все пакеты, особенно если вы используете собственный источник пакета ( такой как внутренний сервер NuGet). Добавление
/t:Restore;Build
к аргументам MSBuild, кажется, является одним из способов устранения ошибки, но при этом MSBuild просит выполнить дополнительную операцию восстановления NuGet. Я считаю, что это успешно, потому что MSBuild использует пользовательский источник пакета, настроенный в Visual Studio. Предпочтительным решением является исправление задачи восстановления NuGet.Чтобы настроить собственный источник пакета для задачи восстановления NuGet:
NuGet.config
файл, в котором перечислены все источники пакетов (автономные пакеты Microsoft Visual Studio, nuget.org и ваш пользовательский источник пакетов) и добавьте его в систему контроля версий.NuGet.config
./t:Restore;Build
параметр из задачи MSBuild.Дополнительная информация доступна здесь .
источник
Если простое восстановление пакетов NuGet не работает, убедитесь, что в меню « Инструменты» -> « Параметры» -> « Диспетчер пакетов NuGet» -> « Общие» в разделе « Восстановление пакетов» установлен флажок «Разрешить NuGet загружать отсутствующие пакеты».
Затем восстановите пакеты NuGet снова ИЛИ просто REBUILD после удаления папок obj и bin.
источник
Если @ Мустафы-bouzari предложение не поможет, тщательно проверить в «списке ошибок» или «Output» окна для ошибок , почему NuGet не может восстановить, например , из - за чистую проблемой , если вы находитесь за прокси.
источник
Эта проблема возникает, когда ваш инструмент сборки не настроен на выполнение
restore
проектов с использованиемPackageReference
vspackages.config
и в основном затрагивает проекты с новым стилем Net Core и Netstandard.Когда вы открываете Visual Studio и собираете его, он решает эту проблему для вас. Но если вы используете автоматизацию, инструменты CLI, вы видите эту проблему.
Многие решения предлагаются здесь. Но все, что вам нужно запомнить, вам нужно заставить
restore
. В некоторых случаях вы используетеdotnet restore
перед сборкой. Если вы строите с помощью MsBuild, просто добавьте/t:Restore
переключатель в вашу команду.В итоге, вам нужно понять, почему восстановление не может быть активировано. Либо неверный источник nuget, либо отсутствующее действие восстановления, либо устаревший файл nuget.exe, либо все вышеперечисленное.
источник
Очень странный опыт, с которым я столкнулся!
Ранее я клонировал с GIT bash и GIT cmd-Line, я столкнулся с вышеуказанными проблемами.
Позже я клонировал с Tortoise-GIT и все заработало как положено.
Может быть, это сумасшедший ответ, но попытка сделать это один раз может сэкономить ваше время!
источник
Это видно после добавления проекта WinForms Core 3.1 (из шаблонов проектов) на VS-2019 по сравнению с 16.4.0 и попытки запустить его из коробки. Очистить или восстановить все решение не сработало.
Я просто перезагрузил свое решение .. это File / Close Solution, а затем снова открыл его и перестроил, что решило проблему.
источник
Я получил ошибку, когда я создал лямбда в ядре точечной сети в VS2017. Для меня работало, чтобы выгрузить проект и загрузить его обратно.
источник
запустите VS как администратор, после этого в консоли диспетчера пакетов запустите dotnet restore.
источник
Другой, если вы случайно используете Dropbox, проверьте
Conflicted
имена файлов, выполните поиск в репозитории и удалите все эти конфликтующие файлы.Это могло произойти, если вы переместили файлы.
источник
Причина этого дефекта: вы должны удалить введенный Nuget в проводнике. Решение: Как только вы удалите этот Nuget в своей системе, затем удалите его из следующего места. выберите Инструмент => Параметры => Диспетчер пакетов NuGet => Источники пакетов, затем снимите флажок Автономные пакеты Microsoft Visual Studio
источник
Это сработало для меня: добавил этот источник пакета: Microsoft и .net https://www.nuget.org/api/v2/curated-feeds/microsoftdotnet/, затем запустите «dotnet restore» в консоли
источник
В моем случае у меня была проблема с доступными источниками пакетов. Мне пришлось переместить локальную папку репозитория Nuget на новый путь, но я не обновлял ее в доступных источниках пакетов Nuget. Когда я исправлю проблему пути, обновите ее в доступных источниках пакетов, и после этого все (восстановление Nuget и т. Д.) Работало нормально.
источник
Для меня это оказалось проблемой с учетными данными. Недавно я изменил свой пароль для доступа к серверу Nexus, и Visual Studio все еще использовала старый пароль при попытке получить доступ к nuget на этом сервере через диспетчер учетных данных Windows. Чтобы исправить это, мне пришлось удалить запись для этих устаревших учетных данных в диспетчере учетных данных, и после того, как я сделал восстановление nuget, он запросил пароль, позволяющий мне ввести новый пароль, который снова был сохранен в диспетчере учетных данных. Вы можете получить доступ к диспетчеру учетных данных из строки cmd, используя CmdKey.exe.
источник
Попробуйте это (это работало для меня):
источник
Вы можете выбрать: Инструменты> Диспетчер пакетов NuGet> Консоль диспетчера пакетов.
А затем запустить:
восстановление dotnet
источник