Komutu çalıştırdığımda grunt
şu uyarıyı alıyorum:
Running "karma:unit" (karma) task
Warning: No provider for "framework:jasmine"! (Resolving: framework:jasmine) Use --force to continue.
Bu sorunu nasıl çözeceğini bilen var mı?
Yanıtlar:
Yeni bir proje açısal jeneratör (yo açısal) oluşturduktan sonra da aynı hatayı aldım.
Benim için çözüm, packages.json'daki devDependencies 'e "karma-jasmine" eklemek ve "npm install" ı tekrar çalıştırmaktı.
npm install karma-jasmine --save-dev
Bu, "" çerçeve: yasemin "sağlayıcısı yok!" Hata mesajını çözdü.
Ben de hiçbir başlatıcısı yüklendiğini mesajı var gibi devDependencies bir karma tarayıcı başlatıcısı eklemek zorunda (bkz http://karma-runner.github.io/0.10/config/browsers.html ).
npm install karma-safari-launcher --save-dev
Paketlerim.json eylemimden sonra şöyle görünüyordu:
{
"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 dosyasındaki aşağıdaki satırı karma-safari-launcher'ı kullanmak için değiştirdim:
browsers: ['Safari'],
Umarım bu senin için de işe yarar.
Error: No provider for "framework:karma-chrome-launcher"!
sonra ben varım
: @Taco söylediği gibi, bu sorun için çözüm pakedi böyle uygun eklentiyi, yüklüyor npm install karma-jasmine --save-dev
veya bu: npm install karma-mocha --save-dev
.
Ancak, karma-cli
karmanın eklentileri yükleme biçimini güncelledikleri için eski bir sürümünü çalıştırdığınızda da bu hata bekleniyor . En son sürüme sahip olduğunuzdan emin olmak için şunu çalıştırın:
npm install -g karma-cli
npm install -g karma
olduğu değil aynı şey npm install -g karma-cli
.
npm install -g karma
ama bu işe yaramıyor. Kullanmalısınıznpm install -g karma-cli
Sorunum dosyamdaydı karma.config.js
:
plugins: [require("karma-webpack")]
Bu, dahil olmak üzere diğer karma-*
eklentilerin yüklenmemesine neden oldu karma-jasmine
.
karma-webpack
benim zaten package.json
's devDependencies
, bunu dışarı yorumladı plugins
benim girişi karma.config.js
dosyası.
Senin Eğer karma.conf.js
bir belirtir plugins
özellik, eklemeyi unutmayın karma-jasmine
listeye. Tüm eklentilerin önünde varsa, eklentiler karma-
otomatik olarak yükleneceği için bu özelliği belirtmenize gerek yoktur.
plugins: ['karma-jasmine', 'karma-chrome-launcher', 'karma-spec-reporter', 'karma-coverage'],
Bu bana oldu çünkü Karma'yı global olarak kurdum ve karma start komutunu çalıştırdığımda, aslında dev dizinim yerine / usr / ... içinde çalıştı.
Benim durumumda çözüm karmayı kaldırmak ve onun yerine karma-cli kurmaktı.
npm remove -g karma
npm install -g karma-cli
npm install karma-chrome-launcher --save-dev