Не вдалося відновити пакет NuGet для проекту Різні файли: значення не може бути нульовим або порожнім рядком. Назва параметра: root. 0 0


89

У мене виникла така помилка проти 2012: Не вдалося відновити пакет NuGet для проекту Різні файли: значення не може бути нульовим або порожнім рядком. Назва параметра: root. 0 0

Я бачу, що це помилка https://nuget.codeplex.com/workitem/3780, яку було виправлено для версії 2.8 Але я не можу знайти версію 2.8 на https://nuget.codeplex.com Чи можна виправити помилка без встановлення версії 2.8? Або як отримати 2.8?


1
Я не впевнений у деталях, але це також може трапитися, якщо ви спробуєте використати ім'я вихідного файлу за допомогою макросів, наприклад $ (SolutionDir) $ (Configuration) \ MyInstaller.msi Я зіткнувся з цією проблемою при спробі побудувати VS Ми встановили, що я міг використовувати макроси в імені вихідного файлу.
ryancwarren

Мій колега отримав це з VS 2013 (звичайно, немає оновлення 1 або оновлення 2), і він використовує 2.7.x NuGet. Він оновить зараз.
Csaba Toth,

Відповіді:


153

Я виправив це, видаливши файл параметрів користувача рішення Visual Studio (.suo), а потім перезапустивши VS.

ОНОВЛЕННЯ: Для VS 2017 потрібно видалити приховану папку з іменем .vs, розташовану в каталозі рішень (Дякую @Tien Dinh!)


У мене було два suo-файли: <solutionName> .suo та <solutionName> .v11.suo. Я використовую VS2012 Professional Update 3 і видалення обох працювало для мене. Зараз у мене присутній лише файл <solutionName> .v11.suo.
Феллмайстер

2
для VS2017 просто видаліть приховану папку під назвою .vs
Тянь Дін

1
Прихована папка .vs знаходиться в каталозі рішення.
JDawg

Також працював у Visual Studio 2017 Community Edition. Спасибі (y)
Najeeb

27

Мав таку ж проблему з VS2013 сьогодні. Після запуску оновлення для встановлених пакунків (інструменти -> розширення та оновлення) (яке включало nuget) та встановлення деяких оновлень для VS2013 (деякі оновлення Windows мали), воно зникло.

Отже, в основному перевірте наявність цих оновлень, оновіть, і це може вирішити проблему.


15

У мене VS 2013. За словами менеджера розширень, nuget був оновлений.

Виконав установку вручну з веб-сайту vsix: http://visualstudiogallery.msdn.microsoft.com/4ec1526c-4a8c-4a84-b702-b21a8f5293ca

... вирішено проблему.


Це вирішило проблему для мене. Я зіткнувся з проблемою лише під час створення в Release.
ctorx

Ця проблема з’явилася не звідки, буквально з неіснуючої, щоб отримати останні новини про рішення та бум. Тут та сама проблема, що менеджер розширень заборонив і сказав, що він був оновлений, коли ні. Я люблю Microsoft, але я серйозно не розумію, як вони так жахливо встановлюють програмне забезпечення.
Кріс Марісіч

11

Простий перезапуск Visual Studio повинен все очистити. У мене була така сама проблема у VS2013 після оновлення веб-API. Не потрібно було видаляти .suo.




3

Не точна відповідь, але найкраще я можу сказати, NuGet ver. 2.8 поки недоступний. Я маю справу з тим самим питанням вже якийсь час (2 місяці). Я все ще міг успішно створити своє рішення навіть з цією помилкою, виконавши збірку щодо основного проекту. Я дуже сподіваюся вирішити цю проблему, тому що це серйозний очей під час роботи.




1

Просто як коротка примітка. Я отримав цю помилку, запустивши проект на відображеному мережевому диску, тобто T:\NetworkFolder\Project\Solution.sln.

Очевидно, що рішення просте - не робіть цього - скопіюйте його на свою машину. Може в якийсь момент врятувати комусь біль.


1

Жодна з наведених відповідей мені не допомогла, і це стало досить неприємно.

Що працювало у мене (з Visual Studio Professional 2017, версія 15.8.5), виконувало такі дії;

1) Інструменти> Параметри> Менеджер пакунків NuGet> Клацніть «Очистити всі кеші NuGet»

Сподіваюся, це комусь допомагає!


0

У мене це не спрацювало. Мені довелося перейти до інструментів, менеджеру розширень ... Видаліть NuGet Перезапустіть Visual Studio 2010 Завантажте NuGet Перевстановіть його. Перезапустіть Visual Studio. Все це виправлено!


0

Давайте перевіримо назву пакетів у файлі package.config. Іноді назва неправильна, зустрічається


0

Я отримав цю помилку, випадково перейменувавши один із атрибутів простору імен у файлі package.config на щось інше. Я зміг це відстежити, порівнявши зареєстровану версію пакета.config з моєю локальною. Після того, як я виправив проблему, мені залишилось лише закрити файл package.config, відновити, і проблема зникла.


0

У Visual Studio 2015:

Перейдіть до Параметри-> Менеджер пакунків NuGet-> Джерела пакетів, переконайтеся, що в списку пакунків для машини встановлено прапорець "Microsoft і .Net".


0

Я видалив і перевстановив nUnit 3.7.1, і все знову почало працювати. У мене є кілька nuget-пакетів, але nunit 3.7.1 - це єдиний, який я перевстановив, а решту залишив у спокої.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.