如果在gulpfile.js之外的不同文件夹中安装gulp(node_modules),你如何运行gulp

时间:2015-08-27 22:35:47

标签: node.js npm gulp

我在一个目录中有gulpfile.js,在另一个目录中有node_modules。 当我运行gulp时,我得到错误 - '找不到当地的gulp .. ..(目录).. 尝试运行:npm install gulp'

问题是 - 我无法在gulpfile.js的目录中安装gulp,因此我需要一种方法来告诉gulp参考我安装了gulp的其他目录。

4 个答案:

答案 0 :(得分:23)

如果您不想,您不需要全局安装gulp。你可以做的是运行你的gulp可执行文件(来自你的node_modules),然后使用 - gulpfile 参数传入你的gulpfile的位置。此外,如果您想控制gulp的运行位置,请使用 - cwd 参数。

以下是一个例子:

 <NODE_MODULES DIR>/gulp/bin/gulp.js --gulpfile <GULP FILE> --cwd <SOME DIR>

答案 1 :(得分:4)

无需全局安装gulp。 首先安装gulp(理想情况下是dev依赖项)

npm install gulp --save-dev

然后在package.json中添加你想要运行的行

"scripts" : { "gulp" : "gulp"} }

最后在命令行中使用

npm run gulp

npm将使用节点模块中的二进制文件而无需全局安装或写下整个路径

答案 2 :(得分:1)

您需要全局安装gulp:

npm install -g gulp

这将允许您从任何目录中的命令行运行gulp

答案 3 :(得分:0)

始终将node_modules文件夹放在父目录中,然后将项目目录设为子/孙子文件夹。

请勿将node_modules文件夹放在任何子目录

文件夹结构如下:

└──node_modules

└─project_1

└─project_2

在任何子/大孩子目录中gulp都可以使用