2014-10-27 6 views
1

Я пытаюсь развернуть On Demand Node.js WebJob на моем Azure веб-сайт, который использует несколько библиотек узлов, но каждый прогон генерирует ошибкуAzure Webjob System.IO.PathTooLongException

Failed to copy job files: System.IO.PathTooLongException: The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters. 

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

ответ

1

В настоящее время это известное ограничение с помощью WebJobs/node.js/Windows.

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

Обходные:

  1. Удалить файлы с самыми длинными путями, как правило, они связаны испытаниями и не будет влиять на ваш сценарий.
  2. Если вы используете npm install, вы можете попробовать использовать npm dedupe, который может помочь (https://www.npmjs.org/doc/cli/npm-dedupe.html).
+0

Есть ли способ выяснить, какие файлы вызывают проблему? Возможно, рекурсивная итерация файлов с fs? – danielmhanover

+0

Я использую dir/s/b и выхожу на самый длинный –

+0

Я тоже получаю это, но в моем случае статус работы остается «пустым» на неопределенный срок (прошло уже пару дней), а кнопка удаления неактивна. .. –

Смежные вопросы