无法使用npm安装的软件包

时间:2014-09-30 09:16:42

标签: node.js npm

编辑:将〜/ npm / bin添加到PATH = $ PATH的路径:〜/ npm / bin帮助,谢谢Joachim Isaksson

编辑:

好像我无法使用npm安装任何软件包。在成功安装它们之后,我无法将它们与包中指定的命令一起使用。 “找不到命令。”

node -v 
v0.11.14

npm -v
2.0.0

在ubuntu机器上

好像我无法安装resume-cli模块,使用npm找到here。即使安装没有错误,安装后也无法理解基本命令。这可能是警告的问题,显示在?

sudo npm install -g resume-cli

我得到了

   npm WARN engine html-to-text@0.0.8: wanted: {"node":"~0.8.0"} (current: {"node":"0.10.32","npm":"1.4.28"})

然后

/home/bjornasm/npm/bin/resume -> /home/bjornasm/npm/lib/node_modules/resume-cli/index.js
resume-cli@0.3.10 /home/bjornasm/npm/lib/node_modules/resume-cli
├── cli-spinner@0.1.5
├── char-spinner@1.0.1
├── commander@2.3.0
├── colors@0.6.2
├── open@0.0.5
├── chalk@0.4.0 (has-color@0.1.7, ansi-styles@1.0.0, strip-ansi@0.1.1)
├── async@0.9.0
├── read@1.0.5 (mute-stream@0.0.4)
├── terminal-menu@0.3.2 (inherits@2.0.1, charm@0.1.2, resumer@0.0.0)
├── superagent@0.18.2 (extend@1.2.1, qs@0.6.6, methods@1.0.1, cookiejar@2.0.1,  component-emitter@1.1.2, reduce-component@1.0.1, mime@1.2.11, debug@1.0.4, readable-stream@1.0.27-1, form-data@0.1.3, formidable@1.0.14)
├── resume-to-text@0.0.15 (mustache@0.8.2, html-to-text@0.0.8)
├── resume-to-html@0.0.21 (gravatar@1.0.6, resume-to-markdown@0.0.14, marked@0.3.2, mustache@0.8.2, lodash@2.4.1)
├── jsonlint@1.6.2 (nomnom@1.8.0, JSV@4.0.2)   
└── resume-schema@0.0.15 (z-schema@2.4.10)

然后运行以下

resume --help

我得到了

resume: command not found

有谁熟悉这个?

1 个答案:

答案 0 :(得分:1)

以下是从源安装给定版本的步骤 注意 - 这会安装nodejs,它既可以提供节点也可以提供npm,它们每个版本都可以组合在一起。

开始新鲜删除之前的node.js和npm安装以及以下内容:

sudo mv ~/.npmrc ~/.npmrc_ignore
sudo mv ~/.npm   ~/.npm_ignore
sudo mv ~/tmp    ~/tmp_ignore
sudo mv ~/.npm-init.js ~/.npm-init.js_ignore

安装nodejs和npm作为你自己不root用户执行这些命令(OSX / linux):

export NODE_PARENT=${HOME}/bin_0_10_32

mkdir ${NODE_PARENT}

http://nodejs.org/download/

下载源代码
cd node-v0.xxxx

./configure   --prefix=${NODE_PARENT}/nodejs

make -j8
make install   #  IMPORTANT this is NOT using sudo
               # not wanted since installing into $USER owned $NODE_PARENT

将其放入上面--prefix

定义的目录中
export PATH=${NODE_PARENT}/nodejs/bin:$PATH

定义环境变量NODE_PATH,以便节点可以找到模块的dir npm install xxx会将新安装的模块放入当前目录:

export NODE_PATH=${NODE_PARENT}/nodejs/lib/node_modules

使用语法时:npm install -g some_cool_module -g for global将它安装到dir $ NODE_PATH而不是你的$ PWD

nodejs install也为你提供了npm:

ls -la ${NODE_PARENT}/nodejs/bin

使用全局标志-g安装的后续模块会自动将他们的〜二进制文件放到上面的bin目录中......比如browserify

现在把三个导出xxx = yyy 命令到〜/ .bashrc或其他一些设置,以便你的环境设置