在用npm安装后找不到命令
预先感谢您看我的文章!
主要问题:
-
当我从命令行调用它时,我需要做些什么来获取http-server?
-
我觉得这个问题已经显示出我的linux无能。 如果我想从头开始使用node和home brew,那么在继续之前,我需要删除哪些文件和目录(或者确保它们已经被卸载命令删除)?
提前致谢!
背景
之后我想我已经修复了家庭冲煮(OS X 10.10使用了更新版本的Ruby),我试图在收到消息-bash: http-server: command not found
后,尝试用npm重新安装http-server。 所以我运行sudo npm install -g http-server
。 然后我得到一个包含npm http GET https://registry/npmjs.org/
和npm http 304 https://registry/npmjs.org/
。 后面是~.node/bin/http-server -> ~.node/lib/node_modules/http-server/bin/http-server' and 'http-server@0.7.3 ~.node/lib/node_modules/http-server
。
笔记
-
我发现这个
/usr/local/bin/http-server@
,我相信这是http-server的符号链接。 -
看来,链接
http-server -> ../lib/node_modules/http-server/bin/http-server
不存在,我不明白为什么。 -
文件夹
/usr/local/lib/node_modules/http-server
确实有0.6.1
和0.7.3
-
目录
0.7.3
只有一个package目录,后面跟着一个package.json文件。 我很困惑,因为我期望这不仅仅包含一个package.json。 -
我相信brew是正确安装的,因为
which brew
会提供/usr/local/bin/brew
-
另外,我得到了
brew -v Homebrew 0.9.5
-
which npm
给出/usr/local/bin/npm
(节点也是这样) -
npm -v
给出1.4.28
-
我的pathvariables列在第10项(分解出来,因此更具可读性),如下所示。
-
- $ HOME / .npm(我手动把这个在这里,见下面11为什么)
- /箱
- / sbin目录
- 在/ usr / bin中
- / usr / sbin目录
- 在/ usr / local / bin目录
- 在/ usr /本地/ MySQL的/ bin中
- /select/ X11 / bin中
-
看来$ Home / .npm有一个我已经用npm安装的软件包列表。 我以为,如果我把$ Home / .npm它可能会看到http-server,这是在这个目录中。 但似乎与上面第4点所述的结构相同。
-
我使用OS X 10.10
-
昨天我安装了X代码6.1,因为显然是由于命令行问题而需要的。
全局安装
你用npm在全局安装了http-server
吗?
要全局安装模块(您需要CLI),必须启用全局标志:
npm install -g http-server
npm脚本
也可以在本地安装CLI模块,并从npm脚本运行它们。
在你的package.json
:
... devDependencies: { "http-server": "^0.8.5" }, scripts: { "serve": "http-server ./public" } ...
然后
http-server ./public # unsuccessful npm run serve # successful