Файл ресурсов project.assets.json не найден. Запустите восстановление пакета NuGet

Я пытаюсь использовать nopCommerce (который написан на .NET Core), но когда я хочу запустить проект, я сталкиваюсь с 52 ошибками, говорящими мне. Запустите восстановление пакета nuget.

Файл активов ~\obj\project. assets.json ' не найден. Запустите восстановление пакета NuGet для создания этого файла. Nop.Web.MVC.Testsote

когда я использую правый клик по решению и выбираю Restore Nuget Packages, я получаю это сообщение:

Все пакеты уже установлены и восстановить нечего.

но те 52 ошибки все еще существуют и в Инструменты → Менеджер пакетов NuGet → Управление пакетами NuGet для решения в решении ничего не установлено, также я недавно обновил VS2017 до 15.5.4

Ответ 1

Чтобы устранить эту ошибку из "Инструменты" > "Диспетчер пакетов NuGet" > "Консоль диспетчера пакетов" просто запустите:

dotnet restore

Ошибка возникает из-за того, что dotnet cli не создает все необходимые файлы изначально. Выполнение восстановления в dotnet добавляет необходимые файлы.

Ответ 2

В моем случае ошибка была в репозитории GIT. У этого были пробелы в названии, из-за чего мой проект не смог восстановить

Если это ваша проблема, просто переименуйте репозиторий GIT при клонировании

git clone http://Your%20Project%20With%20Spaces newprojectname

Ответ 3

Закрытие и повторное открытие Visual Studio решило эту проблему для меня, как только я убедился, что пакеты NuGet были восстановлены, как и другие ответы, опубликованные здесь.

Ответ 4

В случае, если "восстановление dotnet" не работает, могут помочь следующие шаги:

  1. Visual Studio >> Инструменты >> Параметры >> Диспетчер Nuget >> Источники пакетов
  2. Не проверены любые сторонние источники пакетов.
  3. Восстановить решение.

Ответ 5

Для меня, когда я сделал - dotnet restore все еще ошибка происходила.

я пошел в

1 Инструмент → Менеджер пакетов NuGet → Настройки диспетчера пакетов → нажмите "Очистить в Nuget Catche (s)"

2 dotnet восстановление

решенные вопросы.

Ответ 6

Выберите Инструменты > Диспетчер пакетов NuGet > Консоль диспетчера пакетов.

А затем запустить:

dotnet restore <project or solution name>

Ответ 7

Тем, кто сталкивается с той же проблемой, что и я, в среде 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 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.

Ответ 9

немного поздно для ответа, но, кажется, это добавит ценность. Глядя на ошибку - кажется, это происходит в конвейере CI/CD.

Достаточно просто запустить "сборку dotnet".

дотнет билд

DotNet build запускает "восстановление" по умолчанию.

Ответ 10

В Visual Studio 2017, пожалуйста, выполните следующие действия:

1) выберите Tool => Options => NuGet Package Manager => Источники пакетов, затем снимите флажок Microsoft Visual Studio Offline Packages Option. enter image description here

2) теперь откройте Tool => NuGet Package Maneger => Консоль диспетчера пакетов. 3) выполнить команду в PM> dotnet restore.

Надеюсь, что это работает...

Ответ 11

При использовании VSTS проверьте файл global.json. Я ввел версию SDK как просто "2.2", что вызвало ошибку разбора (но не при локальной сборке). Добавление полной версии "2.2.104" решило проблему.

Ответ 12

Я потерял несколько часов из-за этой ошибки в DevOps Azure, когда установил задачу Visual Studio Build в конвейере сборки для создания отдельного проекта в моем решении, а не всего решения.

Это означает, что DevOps либо не создает ни один (или, возможно, некоторые, я не уверен, какой) из проектов, на которые ссылается проект, для которого вы наметили сборку, и поэтому эти проекты не будут иметь свой project.json сгенерированные файлы .asset, которые затем вызывают эту проблему.

Решением для меня было переключиться с использования задачи VS Build на задачу MSBuild. Использование задачи MSBuild для отдельного проекта правильно создает все проекты, на которые ссылается создаваемый вами проект, и устраняет эту ошибку.

Ответ 13

Если простое восстановление пакетов NuGet не работает, убедитесь, что в меню " Инструменты" → " Параметры" → " Диспетчер пакетов NuGet" → " Общие" в разделе " Восстановление пакетов" установлен флажок "Разрешить NuGet загружать отсутствующие пакеты".

Затем восстановите пакеты NuGet снова ИЛИ просто REBUILD после удаления папок obj и bin.

Ответ 14

Ничто из вышеперечисленного не помогло мне. Но простое удаление всех папок bin и obj помогло.

Ответ 15

У меня возникла ошибка, когда я создал лямбда в чистом ядре в VS2017. Что для меня работало, так это разгрузить проект и загрузить его обратно.

Ответ 16

запустите ваш VS как администратор, после чего в консоли диспетчера пакетов запустите dotnet restore.

Ответ 17

Если @Мустафы-bouzari предложение не поможет, тщательно проверить в "списке ошибок" или "выход" окна для ошибок, почему NuGet не может восстановить, например, из - за чистую проблемой, если вы находитесь за прокси.

Ответ 18

Другой, если вы случайно используете Dropbox, проверьте наличие Conflicted в именах файлов, выполните поиск в репозитории и удалите все эти конфликтующие файлы.

Это могло произойти, если вы переместили файлы.

Ответ 19

Причина этого дефекта: вы должны удалить введенный Nuget в проводнике. Решение: Как только вы удалите этот Nuget в своей системе, затем удалите его из следующего места. выберите Инструмент => Параметры => Диспетчер пакетов NuGet => Источники пакетов, затем снимите флажок Автономные пакеты Microsoft Visual Studio

Ответ 21

В моем случае у меня была проблема с доступными источниками пакетов. Мне пришлось переместить локальную папку репозитория Nuget на новый путь, но я не обновлял ее в доступных источниках пакетов Nuget. Когда я исправлю проблему пути, обновите ее в доступных источниках пакетов, и после этого все (восстановление Nuget и т.д.) Работало нормально.