错误:需要外部模块babel-register

时间:2016-03-09 02:38:55

标签: gulp yeoman

sw_vers&& node -e' console.log(process.platform,process.versions)' 产品名称:Mac OS X. 产品版本:10.11.3 BuildVersion:15D21 达尔文{http_parser:' 2.6.0',   节点:' 5.2.0',   v8:' 4.6.85.31',   紫杉:' 1.7.5',   zlib:' 1.2.8',   ares:' 1.10.1-DEV',   icu:​​' 56.1',   模块:' 47',   openssl:' 1.0.2e' }

节点-v V5.2.0

gulp -v 需要外部模块babel-register CLI版本3.9.1 本地版本3.9.1

运行gulp服务时出错,我之前通过从本地删除整个webapp repo来解决此问题。任何和所有的帮助/建议表示赞赏,如果我没有尽可能正确地格式化这个问题(首次发行),也请原谅。想要解决这个问题而不必这样做。 gulp serve抛出以下内容:

运行yeoman generator" Webapp",我在运行gulp服务时遇到错误。以下是更好背景的以下版本:

 sw_vers && node -e 'console.log(process.platform, process.versions)'
 ProductName:    Mac OS X
 ProductVersion: 10.11.3
 BuildVersion:   15D21
 darwin { http_parser: '2.6.0',
  node: '5.2.0',
  v8: '4.6.85.31',
  uv: '1.7.5',
  zlib: '1.2.8',
  ares: '1.10.1-DEV',
  icu: '56.1',
  modules: '47',
  openssl: '1.0.2e' }


node -v
v5.2.0

gulp -v
Requiring external module babel-register
CLI version 3.9.1
Local version 3.9.1
Finally the gulp serve error:

gulp serve
Requiring external module babel-register
\node_modules/babel-core/lib/transformation/file/options/option-manager.js:372
  throw new Error("Couldn't find preset " + JSON.stringify(val) + "         relative to directory " + JSON.stringify(dirname));

有人知道问题是什么,有什么建议吗?

以下是我尝试的内容:

npm uninstall gulp 
npm install gulp 
//with global flag and not
npm install --save-dev gulp 
//installing babel-register manually w/wo global flag and --save-dev
npm install babel-register
npm cache clean

1 个答案:

答案 0 :(得分:0)

我遇到了一个非常类似的问题,即运行最初使用Yeoman Webapp generator创建的自定义项目,并找到了适用于我的解决方案。一点上下文...项目在我的Windows 7机器上正常运行,当我试图将它移动到我的Mac OSX机器时,我收到了完全相同的错误。我发现的工作是创建一个新的Yeoman Web App项目并拖拽和放大将确切的 node-modules 文件夹结构放到现有项目中。最有可能的是,你的机器没有准确读取和获取的开发依赖,在这种情况下, babel-register 模块包含在 node-modules 文件夹。

如果可以,您还可以将节点,npm,gulp,gulp cli的版本与之前的工作版本以及运行gulp serve时遇到的加载时遇到的版本进行比较看看它们是否匹配。