Я создал модуль ( webapp-module-storage
), который имеет следующие определения:
package.json
{
"dependencies": {
...
},
"devDependencies": {
"gulp": "^3.9.1",
...
},
"name": "webapp-module-storage",
"scripts": {
"postinstall": "gulp build",
"test": "gulp test"
}
}
Я думал, что могу использовать свой модуль внутри другого модуля при его установке с помощью:
npm install github:myorg/webapp-module-storage#master
Однако когда я устанавливаю свой модуль, я получаю эту ошибку:
Локальный глоток не найден
Попробуйте запустить: npm install gulp
Скриншот
gulp
Насколько я понимаю, он поставляется вместе с моим модулем, потому что я объявил его, devDependencies
но похоже, что мой npm postinstall
скрипт не может найти gulp
.
Я что-то упускаю?
npm
gulp
npm-install
post-install
Бенни Нойгебауэр
источник
источник
npm i gulp -D
в папке проекта. Примечание: gulp4 может вызывать проблемы в старых проектах, для установки конкретной версии используйте следующее:npm i gulp@3.9.1 -D
(ps-D
для devDependencies)Ответы:
Попробуйте запустить его
npm link gulp
в каталоге вашего приложения (чтобы создать локальную ссылку на глобально установленный модуль Gulp).источник
npm link gulp --no-bin-links
сработала.npm link [module]
создает символическую ссылку из глобальной установочной папки [module] на ./node_modules/[module] по текущему пути (npm link
без имен пакетов, см.Попробуйте сначала установить свои зависимости:
Если по-прежнему не работает, установите gulp глобально:
если вы обнаружите проблемы с его установкой. введите sudo перед npm .
Если вам нужна дополнительная информация о том, зачем вам gulp глобально и локально, прочтите этот ответ
источник
[17:51:24] CLI version 1.2.1
gulp
путь к моему модулю или глобально установленному gulp.Я пробовал все упомянутые решения. В конце концов я смог решить проблему, осознав, что файл gulpfile.js отсутствует в том месте, где я использовал gulp. После помещения gulpfile.js в папку, из которой я выполнял gulp, у меня все заработало.
источник
npm link gulp --no-bin-links
Запустить это
где
npm link gulp
создает локальную ссылку на глобально установленный модуль gulp, а--no-bin-links
аргумент не позволяет npm создавать символические ссылки для любых двоичных файлов, которые может содержать пакет.Вы не можете перевести символические ссылки в синхронизированную папку в общей папке Windows, поэтому вам понадобится '--no-bin-links', чтобы обойти ее.
Используйте его для любой файловой системы, не поддерживающей символические ссылки.
Symlinks или символические ссылки, являются «виртуальные» файлы или папки , которые ссылаются на физический файл или папку , расположенную в другом месте, и являются важной особенностью , встроенный в многих операционных систем, включая Linux и Windows.
источник
npm link gulp --force
Эта команда мне понравилась.
источник