自从更新到Node 8(我尝试过8.6.0和8.9.4)后,在运行Gulp构建脚本的任何任务时(使用Gulp 3.9.1),我收到错误Error: Cannot find module 'internal/util/types'
。当我降级回节点6(6.4.0)时,脚本再次运行。该错误不是由脚本本身引起的,它也在运行空虚拟任务时发生。我使用Node版本管理器n。
我发现的所有类似问题都是通过升级npm解决了这个问题,我也做了(5.6.0),没有成功。我还将所有已安装的模块更新到最新版本。
从堆栈跟踪中我可以看到模块graceful-fs似乎会导致问题,但这是Gulp本身的依赖,所以我无法摆脱它。这是Gulp与较新Node版本的兼容性问题吗?
完整错误输出:
module.js:540
throw err;
^
Error: Cannot find module 'internal/util/types'
at Function.Module._resolveFilename (module.js:538:15)
at Function.Module._load (module.js:468:25)
at Module.require (module.js:587:17)
at require (internal/module.js:11:18)
at evalmachine.<anonymous>:31:26
at Object.<anonymous> (/path/to/project/node_modules/vinyl-fs/node_modules/graceful-fs/fs.js:11:1)
at Module._compile (module.js:643:30)
at Object.Module._extensions..js (module.js:654:10)
at Module.load (module.js:556:32)
at tryModuleLoad (module.js:499:12)