首页 文章

初始化git后'ember new'命令失败 . 是否有详细的日志可供查看?

提问于
浏览
0

我是ember.js,node和npm的新手 . 我在运行'ember new my-project'命令时遇到问题 . 我强烈怀疑我通过安装错误的东西搞砸了目录权限或其他东西,但我不知道调查它的最佳方法 .

环境如下:AWS EC2实例,ubuntu 16.04,nodejs 7.5.0和npm 4.2.0,bower 1.8.0,ember-cli 2.11.1 .

npm,bower,ember使用-g安装,而不是使用sudo作为ember.js文档推荐 .

当我运行'ember new my-project'命令时,我得到“成功初始化git”,然后我得到了

Error creating new application. Removing generated directory `./my-project`
Command failed: /home/ubuntu/.npm-global/lib/node_modules/ember-cli/node_modules/npm/bin/npm-cli.js install --no-optional --loglevel error
npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue

当我运行〜$ npm ls minimatch来检查错误的迷你匹配时,我没有看到任何模块需要2.0.10所以我不确定它来自哪里 . 我也不确定这究竟是什么让整个事情失败了 .

我也试过运行npm install -g minimatch@3.0.2,但是你可以把它放在npm@4.2.0树之外 .

/home/ubuntu
├── minimatch@3.0.2
└─┬ npm@4.2.0
  ├─┬ fstream-npm@1.2.0
  │ └─┬ fstream-ignore@1.0.5
  │   └── minimatch@3.0.3
  ├─┬ glob@7.1.1
  │ └── minimatch@3.0.3
  ├─┬ init-package-json@1.9.4
  │ └─┬ glob@6.0.4
  │   └── minimatch@3.0.3
  ├─┬ node-gyp@3.5.0
  │ └── minimatch@3.0.3
  └─┬ read-package-json@2.0.4
    └─┬ glob@6.0.4
      └── minimatch@3.0.3

我到目前为止尝试的基本上是玩版本 - 删除和重新安装nodejs和npm,使用不同的版本(docs和google推荐使用不同版本的节点和npm用于ember-cli ..我尝试了节点4.0.0和npm 2.xx和3.xx)

我也尝试过使用ember-cli 2.11.0,因为该版本适用于本地虚拟机,并使用'sudo'运行命令 .

是否有更详细的npm或ember-cli错误日志我可以看看?有人能指出我正确的方向来弄清楚这里发生了什么吗?

2 回答

  • 1

    您可以使用 DEBUG 选项运行 ember new

    DEBUG=* ember new projectname

    这会产生很多输出,但它应该可以帮助你找出它的中断位置 .

  • 1

    感谢@Jure C.为我提出的问题提供答案,我找到了对手头问题的答案,对于任何发现这个问题的人:

    根据他的回答,我得到了以下内容:“运行 'ember new my-project --skip-npm ; cd my-project ; npm install' 显示更多信息...... npm install每次都在挂起,同时提取库并被杀死 - 每次都不在同一个地方”

    这让我相信这是一个奇怪的系统资源和/或超时问题或某种类型,而不是权限或代码问题 .

    出了问题:

    1)似乎有一个本地(而不是全球)安装版本的npm搞砸了 . 不知道我什么时候这样做,但这是一个很大的呐喊 . 删除这个并不是超级直观的,但最终我用谷歌搜索了它,这有助于这个过程更进一步 .

    2)原来可怜的小型AWS实例无法完成任务!

    ulimit -n 2048
    

    可能已经过度杀伤但允许npm install的所有提取过程在终止之前完成 .

相关问题