找不到业力插件依赖项

karma plugin dependencies not being found

当我 运行 karma start 我遇到以下问题

C:\devl\JS\myProject>karma start
06 09 2015 11:30:19.133:WARN [plugin]: Cannot find plugin "karma-chrome-launcher
".
  Did you forget to install it ?
  npm install karma-chrome-launcher --save-dev
06 09 2015 11:30:19.149:WARN [plugin]: Cannot find plugin "karma-firefox-launche
r".
  Did you forget to install it ?
  npm install karma-firefox-launcher --save-dev
06 09 2015 11:30:19.159:WARN [plugin]: Cannot find plugin "karma-ie-launcher".
  Did you forget to install it ?
  npm install karma-ie-launcher --save-dev

当我这样做时 npm list 我可以在树的底部看到依赖关系

├─┬ karma-chrome-launcher@0.2.0
│ ├─┬ fs-access@1.0.0
│ │ └── null-check@1.0.0
│ └─┬ which@1.1.1
│   └─┬ is-absolute@0.1.7
│     └── is-relative@0.1.3
├── karma-firefox-launcher@0.1.6
├─┬ karma-ie-launcher@0.2.0
│ └── lodash@3.10.1
└── karma-jasmine@0.3.6

我已经尝试再次对我的 node_dependencies 和 运行ning npm install 进行核攻击,但我不确定还能尝试什么

编辑:我已经在我的 node_dependencies 目录中进行了验证,插件目录就在那里。

我的回答可能是一个非常菜鸟的回答,但是你是否在 karma 配置文件的 plugins 数组中添加了这些插件?

例如:

    plugins: [
        'karma-jasmine-html-reporter',
        'karma-spec-reporter',
        'karma-chrome-launcher',
        'karma-jasmine',
        'karma-coverage',
        'karma-phantomjs-launcher'
    ],

我的问题在我将插件添加到这个数组后得到解决。

我认为您在全局范围内安装了这些插件。

我遇到了同样的问题,我通过使用 link 标志安装 chrome-karma-launcher 解决了这个问题:

 npm install karma-chrome-launcher --save-dev --link

对所有浏览器的插件执行此操作

 npm install karma-firefox-launcher --save-dev --link
 npm install karma-ie-launcher --save-dev --link

我不知道这是否是最好的方法,但这对我来说已经解决了。

刚开始使用时有两个看似相似的抱怨 Karma:

[preprocess]: Can not load "webpack", it is not registered!
  Perhaps you are missing some plugin?

[plugin]: Cannot find plugin "karma-webpack".
  Did you forget to install it ?
  npm install karma-webpack --save-dev

以下是我解决这两个配置问题的最佳建议……

"Can not load "XYZ", 未注册!" (原文如此)

'Perhaps you are missing some plugin?' 消息的典型解决方案是确保它包含在 karma.conf.js 中的 plugins 数组中。

plugins: [
  'karma-chrome-launcher',
  'karma-tap',
  'karma-sourcemap-loader',
  'karma-webpack' // *** This 'registers' the Karma webpack plugin.
],

"Cannot find plugin 'karma-xyz'."

如果您已经通过 运行 npm install karma-xyz --save-dev 安装了它,但 Karma 仍然提示(读作:嘲讽)您 "Did you forget to install it ?" 警告,您可能全局安装了Karma 模块。

很有可能,当您使用 -g 安装 karma-cli 的全局副本时,您包含了 karma(或者一个善意的教程告诉您这样做),但这可能会导致解决某些版本中的模块问题(即,我曾经使用过的每个版本)。 Karma's installation documentation 建议模块应该是使用 npm install karma --save-dev.

的本地安装

如果您安装了全局 Karma,请尝试以下操作:

$ npm uninstall -g karma
$ npm install karma --save-dev

我有同样的问题,但我通过这个命令修复了:

npm install -g karma-cli

如果有人遇到就补充!!

我遇到了一个烦人的问题,"Cannot load browser "Chrome“:它没有注册!也许你缺少一些插件?”当我 运行 'grunt test'

我已经在 karma.conf.js 的 plugins[] 中添加了插件,但我仍然收到此错误。问题是我没有将插件添加到 GruntFile.js.After 中的 karma:options:plugins 数组中,我在那里添加了插件,问题消失了!!