首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >已安装karma时找不到karma命令

已安装karma时找不到karma命令
EN

Stack Overflow用户
提问于 2013-07-17 23:34:17
回答 9查看 41.4K关注 0票数 69

我使用node.js安装karma。在终端上运行以下命令时,我的第一次尝试失败:

代码语言:javascript
复制
npm install -g karma

但失败了,所以我决定使用:

代码语言:javascript
复制
sudo npm install -g karma

输入我的密码后,它似乎安装正确。我正在粘贴安装输出的一部分,也许它会对某人有意义,并与我的问题相关。在所有npm http消息之后,这是我看到的:

代码语言:javascript
复制
> ws@0.4.27 install /usr/local/share/npm/lib/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws
> (node-gyp rebuild 2> builderror.log) || (exit 0)

  CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
  SOLINK_MODULE(target) Release/bufferutil.node
  SOLINK_MODULE(target) Release/bufferutil.node: Finished
  CXX(target) Release/obj.target/validation/src/validation.o
  SOLINK_MODULE(target) Release/validation.node
  SOLINK_MODULE(target) Release/validation.node: Finished
/usr/local/share/npm/bin/karma -> /usr/local/share/npm/lib/node_modules/karma/bin/karma
karma@0.8.6 /usr/local/share/npm/lib/node_modules/karma
├── pause@0.0.1
├── dateformat@1.0.2-1.2.3
├── xmlbuilder@0.4.2
├── colors@0.6.0-1
├── chokidar@0.6.2
├── growly@1.1.1
├── mime@1.2.9
├── q@0.9.6
├── rimraf@2.1.4 (graceful-fs@1.2.3)
├── coffee-script@1.6.3
├── minimatch@0.2.12 (sigmund@1.0.0, lru-cache@2.3.0)
├── optimist@0.3.5 (wordwrap@0.0.2)
├── glob@3.1.21 (inherits@1.0.0, graceful-fs@1.2.3)
├── LiveScript@1.0.1 (prelude-ls@1.0.1)
├── log4js@0.6.6 (dequeue@1.0.3, semver@1.1.4, async@0.1.15, readable-stream@1.0.2)
├── lodash@1.1.1
├── http-proxy@0.10.3 (pkginfo@0.2.3, utile@0.1.7)
├── istanbul@0.1.22 (abbrev@1.0.4, which@1.0.5, fileset@0.1.5, nopt@2.0.0, wordwrap@0.0.2, async@0.1.22, mkdirp@0.3.5, esprima@0.9.9, escodegen@0.0.24, handlebars@1.0.12)
└── socket.io@0.9.16 (base64id@0.1.0, policyfile@0.0.4, redis@0.7.3, socket.io-client@0.9.16)

然后,当我尝试运行以下命令来使用此命令创建karma配置文件时:

代码语言:javascript
复制
karma init karma.config.js

这是返回的消息:

代码语言:javascript
复制
-bash: karma: command not found

在此之前,我使用sudo尝试了相同的命令,但得到了相同的结果。

有谁知道这是怎么回事吗?任何帮助都是非常感谢的。

*更新!我决定检查位于: /usr/local/share/npm/lib/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws中的一个名为: builderror.log的文件

下面是它显示的内容:

代码语言:javascript
复制
gyp WARN EACCES user "root" does not have permission to access the dev dir "/Users/eperez/.node-gyp/0.10.5"
gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/share/npm/lib/node_modules/karma/node_modules/socket.io/node_modules/socket.io-client/node_modules/ws/.node-gyp"
gyp http GET http://nodejs.org/dist/v0.10.5/node-v0.10.5.tar.gz
gyp http 200 http://nodejs.org/dist/v0.10.5/node-v0.10.5.tar.gz
EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2014-05-21 03:05:22

@mayankcpdixit在回答OP最初的问题时给出了答案,但我会在这里再说一遍,以防有人遗漏。

你不需要卸载所有的东西,如果我必须为我试图安装的每个npm包手动添加一个新的路径链接,我可能会开枪自杀。

代码语言:javascript
复制
npm install -g karma-cli

轰隆隆。现在您已经安装了karma命令行。就像Grunt一样。

编辑:请不要忘记给@mayankcpdixit投票,他直接评论了原始帖子,但实际上并没有“回答”这个问题。

票数 251
EN

Stack Overflow用户

发布于 2013-08-24 00:55:39

在您的~/.bash_profile (或类似)中,修改您的PATH以包含npm安装的二进制文件:

代码语言:javascript
复制
export PATH="$PATH:/usr/local/share/npm/bin"

我遇到了同样的问题,我发现这个解决方案比完全重新安装节点更耗时、更有效。

EDIT这也适用于bash_profile中的其他人

代码语言:javascript
复制
export PATH="$PATH:/usr/local/lib/node_modules/karma/bin" 
票数 37
EN

Stack Overflow用户

发布于 2014-09-03 10:17:58

建议使用命令行界面(karma-cli)安装karma,它将负责获取适当的karma。您还可以针对您正在处理的每个项目安装不同的本地版本,karma-cli将选择合适的版本。

在karma installation页面中:

键入./node_modules/karma/bin/karma start很糟糕,所以您可能会发现全局安装karma-cli很有用:

代码语言:javascript
复制
npm install -g karma-cli

现在,输入以下命令检查karma是否已安装:

代码语言:javascript
复制
karma start

您也可以通过转到以下目录来检查karma是否已安装:

代码语言:javascript
复制
cd /usr/local/lib/node_modules/karma

祝好运!

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17704106

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档