Gruntjs “无供应商”;框架:茉莉花;!(决议:框架:jasmine)

Gruntjs “无供应商”;框架:茉莉花;!(决议:框架:jasmine),gruntjs,karma-jasmine,Gruntjs,Karma Jasmine,当我运行命令grunt时,我得到以下警告: Running "karma:unit" (karma) task Warning: No provider for "framework:jasmine"! (Resolving: framework:jasmine) Use --force to continue. 有人知道如何解决这个问题吗?我在创建了一个新项目yeoman angular generator(yo angular)后也遇到了同样的错误 我的解决方案是在packages.jso

当我运行命令
grunt
时,我得到以下警告:

Running "karma:unit" (karma) task
Warning: No provider for "framework:jasmine"! (Resolving: framework:jasmine) Use --force to continue.

有人知道如何解决这个问题吗?

我在创建了一个新项目yeoman angular generator(yo angular)后也遇到了同样的错误

我的解决方案是在packages.json中的devdependences中添加“karma jasmine”,然后再次运行“npm安装”

npm安装karma jasmine——保存开发人员

这解决了错误消息“框架:jasmine”没有提供程序

我还必须在devdependences中添加一个karma浏览器启动器,因为我得到的消息是没有安装启动器(请参阅)

npm安装karma safari启动器——保存开发人员

我的packages.json在执行操作后如下所示:

{
  "name": "test1",
  "version": "0.0.0",
  "dependencies": {},
  "devDependencies": {
    "grunt": "~0.4.1",
    "grunt-autoprefixer": "~0.4.0",
    "grunt-bower-install": "~0.7.0",
    "grunt-concurrent": "~0.4.1",
    "grunt-contrib-clean": "~0.5.0",
    "grunt-contrib-coffee": "~0.7.0",
    "grunt-contrib-compass": "~0.6.0",
    "grunt-contrib-concat": "~0.3.0",
    "grunt-contrib-connect": "~0.5.0",
    "grunt-contrib-copy": "~0.4.1",
    "grunt-contrib-cssmin": "~0.7.0",
    "grunt-contrib-htmlmin": "~0.1.3",
    "grunt-contrib-imagemin": "~0.3.0",
    "grunt-contrib-jshint": "~0.7.1",
    "grunt-contrib-uglify": "~0.2.0",
    "grunt-contrib-watch": "~0.5.2",
    "grunt-google-cdn": "~0.2.0",
    "grunt-newer": "~0.5.4",
    "grunt-ngmin": "~0.0.2",
    "grunt-rev": "~0.1.0",
    "grunt-svgmin": "~0.2.0",
    "grunt-usemin": "~2.0.0",
    "jshint-stylish": "~0.1.3",
    "load-grunt-tasks": "~0.2.0",
    "time-grunt": "~0.2.1",
    "karma-ng-scenario": "^0.1.0",
    "grunt-karma": "^0.8.0",
    "karma": "^0.12.0",
    "karma-jasmine": "~0.2.2",
    "karma-safari-launcher": "~0.1.1",
    "karma-ng-html2js-preprocessor": "^0.1.0"
  },
  "engines": {
    "node": ">=0.8.0"
  },
  "scripts": {
    "test": "grunt test"
  }
}
我在karma.conf en karma-e2e.conf中更改了以下行以使用karma safari启动器:

browsers: ['Safari'],

我希望这也能对你起作用。

我的问题出在我的
karma.config.js
文件中:

plugins: [require("karma-webpack")]

这导致其他
karma-*
插件无法加载,其中包括
karma jasmine

正如@Taco所说,这个问题的默认解决方案是安装合适的插件,比如:
npm安装karma jasmine--save dev
或者这个:
npm安装karma mocha--save dev

但是,当您运行旧版本的
karma cli
时,也会出现此错误,因为它们更新了karma加载插件的方式。要确保您拥有最新版本,请运行以下命令:

npm install -g karma-cli

如果您的
karma.conf.js
指定了
plugins
属性,请确保将
karma jasmine
添加到列表中。如果所有插件都以
karma-
为前缀,则无需指定此属性,因为插件将自动加载。

我的问题是IntelliJ运行配置中选择的“karma包”。我没有在项目的“节点模块”文件夹中选择项目的karma包:

这件事发生在我身上,因为我在全球安装了Karma,当我运行Karma start命令时,它实际上在/usr/…中运行。。。而不是我的开发目录

在我的案例中,解决方案是移除karma并安装karma cli

npm remove -g karma
npm install -g karma-cli

谢谢唯一不同的是,我使用了chrome
npm安装karma chrome launcher——save dev
@KyleHayes这里是generator angular项目中的错误报告:我得到了
错误:没有“framework:karma chrome launcher”的提供程序在此之后,如果您在karma.config.js中添加了插件:[……],那么安装karma jasmine将无法解决问题。您必须将“karma-jasmine”添加到插件数组中,如插件:[“karma-jasmine]”。据我了解,“npm安装karma-jasmine--save dev”对package.json没有任何影响。所以谢谢你的解决方案,这帮我解决了。我有前面提到的依赖项,但是karma cli显然已经过时了。这解决了我的问题。谢谢,我也遇到了这个。显然,
npm安装-g karma
npm安装-g karma cli
@PeterMajeed安装Jasmine后,我想也许我可以
npm安装-g karma
但这不起作用。您必须使用
npm安装-g karma cli
谢谢,这解决了我的问题,将karma jasmine添加到插件中!谢谢,这已经成功了-这是完整的一行<代码>插件:['karma-jasmine','karma chrome launcher','karma spec reporter','karma coverage',
这正是我(缺少)要找的。aleclarson的也是我的问题。由于
karma webpack
已经在我的
package.json
devDependencies
中,我在
karma.config.js
文件中注释了这个
插件
条目。