Gulp命令报告模块找不到错误

6
我正在尝试在Windows上设置基本的Aurelia应用程序。我按照http://aurelia.io/get-started.html中的说明进行操作,包括以下步骤:
  1. 安装Node.js
  2. 使用以下命令安装gulp:npm install -g gulp
  3. 使用以下命令安装jspm:npm install -g jspm
  4. 然后从https://github.com/aurelia/skeleton-navigation/releases下载示例源代码到项目文件夹中。
  5. 打开控制台并切换到项目目录,即navigation-app
  6. 执行以下命令:npm install
  7. 执行以下命令:jspm install -y
  8. 最后使用以下命令启动服务器:gulp watch
上述所有步骤都已成功完成,除了第8步,出现错误:
E:\aurelia\navigation-app>gulp watch
module.js:338
    throw err;
          ^
Error: Cannot find module 'debug/node'
    at Function.Module._resolveFilename (module.js:336:15)
    at Function.Module._load (module.js:278:25)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.<anonymous> (E:\aurelia\navigation-app\node_modules\gulp-babel\nod
e_modules\babel-core\lib\babel\util.js:22:34)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)

我不明白为什么它找不到模块。 如果我手动安装该模块,当我尝试运行gulp watch时,它会出现另一个模块的错误消息。


当你运行 node -vnpm -vjspm -vgulp -v 时,会返回什么? - Ashley Grant
E:\aurelia\navigation-app>node -v v0.12.2E:\aurelia\navigation-app>npm -v 2.7.4E:\aurelia\navigation-app>jspm -v 0.15.1 运行全局 jspm 安装。E:\aurelia\navigation-app>gulp -v [23:26:05] CLI 版本 3.8.11 [23:26:05] 本地版本 3.8.11 - vish
我正在使用v0.10.35版本的Node,没有任何问题。你尝试过回退到先前的Node版本吗? - PW Kad
1
你可能在从Git下载时遇到了问题。请参考Aurealia安装页面上的这条评论:“但是GitHub对匿名API请求有速率限制。建议您使用自己的GitHub凭据配置jspm,以避免出现问题。您可以通过执行jspm registry config github并按照提示操作来完成此操作。” - Chi Row
我遇到了类似的问题(虽然不完全相同)。我的问题出在jspm缓存中。尝试清除它,看看是否解决了问题:jspm cc - aleith
4个回答

4

自从我将Aurelia及相关工具升级到最新版本以来,我一直在解决这个问题。这可能与Windows上使用本地Module.require时的路径长度/深度问题有关。

当我从项目的本地node_modules文件夹中卸载以下软件包,并改为在全局NPM缓存中安装它们(在我的情况下,该缓存位于更浅的目录深度处),gulp build再次开始工作:

npm uninstall gulp-babel
npm uninstall browser-sync
npm uninstall karma

npm install -g gulp-babel
npm install -g browser-sync
npm install -g karma

感谢@Craigology,我会尝试相同的方法。 - vish
1
卸载并重新安装gulp-babel(全局安装)对我很有用,当agar.io-clone的后安装过程给出错误信息Error: Cannot find module './lib/babel/api/node.js'时。所以谢谢你,点赞! - Sk8erPeter

1
我遇到了完全相同的错误,由于 debug/node 实际上不是一个包,我困惑了好几天。但this 是解决方案,对我有效。这个解决方案很愚蠢和简单,但我在这里重新发布希望它能节省其他人的时间。
简而言之,解决方案是删除应用程序中的 node_modules 文件夹并再次运行 npm install

0

我也遇到了同样的问题。运行Gulp watch时出现了“missing socket.io”的错误。显然,browser-sync作为socket.io的依赖项没有完全/正确地安装。如果你在项目的根目录下运行npm install,它不会检查你的依赖项的依赖项。你必须在缺少依赖项的模块文件夹中运行npm install。很可能你需要这样做几次(我肯定是这样做的)。


0

可能的问题是您没有运行NPM v3...

如果您在Windows上安装和运行Aurelia时遇到问题,您可能会发现这些安装说明很有用。

(更多详细信息请参见http://www.alexdresko.com/2015/11/24/getting-started-with-aurelia-on-windows-10/

  1. 安装Chocolatey
  2. choco install git -y
  3. 配置Git
  4. choco install python2 -y
  5. 创建Python环境变量
  6. 输入echo %python%,确保环境变量已创建并正常工作。
  7. npm install -g gulp
  8. npm install -g jspm
  9. mkdir c:\code\aureliatest(或其他测试目录)
  10. cd c:\code\aureliatest
  11. npm install -g yo generator-aurelia
  12. 安装Visual Studio Community(正确地)https://www.visualstudio.com/en-us/downloads/post-install-vs?campaign=ct!!223A5085247E47A1A9F37AA43E69C2A5
  13. choco install googlechrome -y
  14. yo aurelia
  15. gulp watch

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接