没有提供“框架:茉莉花”! (解决:框架:茉莉花)
当我运行命令grunt
我得到以下警告:
Running "karma:unit" (karma) task Warning: No provider for "framework:jasmine"! (Resolving: framework:jasmine) Use --force to continue.
有谁知道如何解决这个问题?
创build一个新的项目后,我有同样的错误yeomanangular发生器(哟angular)。
我的解决scheme是在packages.json的devDependencies中添加“karma-jasmine”,并再次运行“npm install”。
npm install karma-jasmine --save-dev
这解决了错误消息“没有提供者”框架:茉莉花“!”
我还必须在devDependencies中添加一个业力浏览器启动器,因为我得到了没有安装启动器的消息(请参阅http://karma-runner.github.io/0.10/config/browsers.html )。
npm install karma-safari-launcher --save-dev
我的行为后,我的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中的以下行更改为karma-e2e.conf以使用karma-safari-launcher:
browsers: ['Safari'],
我希望这也能为你工作。
正如@Taco所说,这个问题的默认解决scheme是安装适当的插件,如下所示: npm install karma-jasmine --save-dev
或者这个: npm install karma-mocha --save-dev
。
然而,当你运行旧版本的karma-cli
时,也会出现这个错误,因为他们更新了karma加载插件的方式。 为了确保你有最新版本,运行这个:
npm install -g karma-cli
我的问题是在我的karma.config.js
文件中:
plugins: [require("karma-webpack")]
这导致其他karma-*
插件不被加载,其中包括karma-jasmine
。
如果您的karma.conf.js
指定了一个plugins
属性,请确保将karma-jasmine
添加到列表中。 如果所有的插件前缀为karma-
,则不需要指定该属性,因为插件将被自动加载。
它发生在我身上,因为我在全球范围内安装了Karma,而当我运行karma start命令时,它实际上运行在/ usr / …而不是我的开发目录中。
在我的情况下,解决scheme是去除业力,并安装karma-cli。
npm remove -g karma npm install -g karma-cli
我的问题是IntelliJ运行configuration中选定的“Karma包”。 我没有在项目的“node_module”文件夹中select项目的业务包:
- Grunt.js:在npm install -gave -save-dev中,-save-dev是什么意思
- 你是否应该链接到生产中的bower_components?
- 我如何从一个咕task任务中运行一个咕噜任务?
- 如何根据相应文件的父文件夹名称使用Grunt重命名文件?
- JavaScript的Web应用程序和Java服务器,build立所有在Maven或使用Grunt的Web应用程序?
- 如何将使用grunt的节点应用程序部署到heroku
- grunt文件的<%= yeoman.app%>和<%= yeoman.dist%>variables
- npm windows安装全局结果npm ERR! 外来
- 让Grunt为不同的设置生成index.html