64

我试图安装phantomjs以便make test Twitter Bootstrap。我在本地安装后 ie npm install phantomjs,它报告该软件包是无关的。

├─┬ phantomjs@1.9.0-3 extraneous
│ ├── adm-zip@0.2.1
...
npm ERR! extraneous: phantomjs@1.9.0-3 /Users/admin/bootstrap/node_modules/phantomjs
npm ERR! not ok code 0

但是,当phantomjs全局安装时npm install phantomjs -g,它工作正常,即没有报告无关的错误。

问题:

  1. 是因为phantomjs 没有在package.json文件中指定吗?
  2. 一般问题:我们可以在全球和本地安装任何包,例如phantomjs吗?
4

2 回答 2

79
  1. 是的。(重新安装npm install不会再次安装phantom.js。)(顺便说一句:npm install xxx --save会自动将xxx添加到package.json)
  2. 是的。本地包版本优于全局包版本。(尽管您需要对可执行文件进行一些路径处理。)
于 2013-04-27T18:14:58.377 回答
10
  1. phantomjs 应该包含在您的本地 .json 包中(手动编辑它或使用 --save 命令查看 TheHippo 的答案)。如果它安装在某个地方并且您不需要它,请使用 prune 命令

    npm prune

将删除所有不需要的包。

  1. 要在本地和全局安装项目,请使用:

    sudo npm install -g phantomjs

于 2016-08-24T07:36:24.460 回答