Проект x не был импортирован из-за отсутствия файла (проблема с длиной пути)

#.net #visual-studio #.net-core #nuget-package-restore #dotnet-restore

#.net #visual-studio #.net-core #nuget-package-восстановление #dotnet-восстановление

Вопрос:

В настоящее время я сталкиваюсь с ошибкой (см. Скриншот), когда я больше не могу добавлять зависимости в свое решение Visual Studio. Связано ли это с проблемами с путями или происходит что-то еще.

Я уже пробовал восстановление nuget, очистку решения и т. Д…

Причина, по которой имена файлов такие длинные, заключается в ясности, к чему они принадлежат, но если это ограничение (которое я ожидаю, но не могу его найти), то как мне лучше всего приступить к работе?

Ошибка в VS2019

Ответ №1:

ОС также имеет ограничение MAX_PATH. Это ограничение составляет 260 символов. Даже если ваш путь к файлу ниже этого ограничения символов, могут возникнуть проблемы из-за зарезервированного пространства. Публикация

Я рекомендую создать простую и короткую иерархию и присвоение имен. У вас будет много проблем с присвоением имен таким образом.

Если вы хотите продолжить присвоение этому имени, выполните следующие настройки в своей операционной системе и снова откройте и протестируйте свой проект:

Первый,

  • откройте реестр с помощью regedit
  • Дважды щелкните LongPathsEnabled in HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlFileSystem . Если этот элемент отсутствует, создайте новый. Установите значение Data равным 1 и сохраните

Во-вторых, (если в Windows 10 Pro или Enterprise)

  • Запустите gpedit.msc в меню «Пуск»
  • Найдите «Включить длинные пути Win32» в разделе « Computer Configuration > Administrative Templates > System > Filesystem » и дважды щелкните, чтобы открыть его
  • Отметьте как включенный и сохраните

Перезагрузите компьютер.

Как только ваш компьютер перезагрузится и вы откроете свой проект, проблема должна быть решена.

Если рядом с пакетами NuGet все еще отображается желтое предупреждение, подтвердите его, набрав dotnet restore в Nuget Packet Manager. (Убедитесь, что вы правильно выбрали проект по умолчанию). При необходимости перезапустите Visual Studio.

Комментарии:

1. спасибо за совет, хотя я понимаю вашу рекомендацию, пришло время избавиться от MAX_PATH для современных приложений, черт возьми.. Я ненавижу это. Я не хочу сокращать имена проектов, поскольку они не отражают то, что там есть… Но, конечно, это не в наших или ваших руках.