Установка пряжи с несколькими git зависимостями приводит к ошибке «EINVAL: недопустимый аргумент, mkdir ...» - PullRequest
0 голосов
/ 01 августа 2020

Node (v14.2.0), Yarn (1.22.4), Windows 10

Контекст: у меня есть несколько проектов узлов, размещенных в частном репозитории git. У меня есть несколько перекрестных зависимостей между проектами, например, проект C зависит от проектов A и B, а проект D может зависеть от C и A (возможно, это моя проблема?). Обычно у меня есть файлы package. json, настроенные для прямого использования репозиториев git, и он достаточно хорошо работает для проектов с одной или двумя зависимостями.

Один из моих больших проектов имеет множество зависимостей от другие мои проекты. Запуск yarn install в этом проекте постоянно дает мне эту ошибку:

EINVAL: invalid argument, mkdir [some C:\\...Yarn\\Cache\\... directory]

Установка заканчивается этой ошибкой, и node_modules не создаются.

Я работал над проблема, удалив все (девять) git зависимостей из моего пакета. json, а затем добавив их одну за другой и запустив yarn install каждый раз. Никаких проблем, никаких ошибок, и в итоге у меня есть полностью работающий проект узла. Большой успех!

Тогда возникает вопрос, почему я не могу установить (запустить yarn install) все сразу. Я пробовал уловки, которые нашел в поиске в Google - очистить кеш пряжи, использовать npm install, запустить npm adduser или npm login, запустить от имени администратора ... каждая комбинация этих действий приводила к одной и той же ошибке EINVAL.

Я предполагаю, что yarn пытается делать "слишком много вещей одновременно", что приводит к ошибкам файловой системы (пытается mkdir заблокировать каталог) ... но почему это не задокументировано и т. важно, почему нет способа указать пряжу устанавливать «по одной штуке за раз»? Если есть, а я пропустил это, я хотел бы знать об этом.

Ура!

...