"फ्रेमवर्क: चमेली" के लिए कोई प्रदाता नहीं! (समाधान: रूपरेखा: चमेली)


98

जब मैं कमांड चलाता हूं तो मुझे gruntनिम्नलिखित चेतावनी मिलती है:

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

किसी को भी इस मुद्दे को हल करने के लिए कैसे पता है?

जवाबों:


181

योमन कोणीय जनरेटर (यो कोणीय) एक नया प्रोजेक्ट बनाने के बाद मुझे वही त्रुटि हुई।

मेरे लिए समाधान संकुल में देवता पर निर्भरता के लिए "कर्म-चमेली" जोड़ रहा था। फिर से "एनपीएम इंस्टॉल" चल रहा था।

npm install karma-jasmine --save-dev

इससे त्रुटि संदेश "" फ्रेमवर्क: चमेली "के लिए कोई प्रदाता नहीं है!"

मुझे भी डिमांड डिपेंडेंसी में एक कर्म ब्राउज़र लॉन्चर को जोड़ना पड़ा, क्योंकि मुझे संदेश मिला कि कोई लॉन्चर इंस्टॉल नहीं किया गया था (देखें http://karma-runner.github.io/0.10/config/browsers.html )।

npm install karma-safari-launcher --save-dev

मेरे पैकेज.जॉन मेरी कार्रवाई के बाद इस तरह दिखे:

{
  "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"
  }
}

मैंने कर्म में निम्नलिखित पंक्ति को बदल दिया है। कर्म-ई 2 ई.कॉन्फ़ में कर्म-सफारी-लॉन्चिंग का उपयोग करने के लिए:

browsers: ['Safari'],

मुझे उम्मीद है कि यह आपके लिए भी काम करेगा।


2
धन्यवाद! केवल एक चीज जो मैंने अलग की थी वह यह थी कि मैंने npm install karma-chrome-launcher --save-dev
लुसियानो

1
@KyleHayes यहाँ जनरेटर-कोणीय परियोजना में बग रिपोर्ट है: github.com/yeoman/generator-angular/issues/629
cjerdonek

1
मुझे इसके Error: No provider for "framework:karma-chrome-launcher"!बाद मिला
डेविड

1
यदि आपके पास प्लगइन्स हैं: [...] को karma.config.js में जोड़ा गया है, तो कर्म-चमेली को स्थापित करने से समस्या हल नहीं होगी। आपको प्लगइन्स की तरह प्लगइन्स सरणी में 'कर्म-चमेली' जोड़ना होगा: ['कर्म-चमेली']।
थादिक्करन

मेरी समझ के अनुसार, "npm स्थापित कर्म-चमेली -सावे-देव" पैकेज.जॉन पर कोई प्रभाव नहीं डाल रहा था। तो इस समाधान के लिए धन्यवाद।
एंडी

37

जैसा कि @ टैको ने कहा, इस समस्या के लिए डिफ़ॉल्ट समाधान उचित प्लगइन स्थापित कर रहा है, जैसे: npm install karma-jasmine --save-devया यह npm install karma-mocha --save-dev:।

हालाँकि, यह त्रुटि भी अपेक्षित है जब आप एक पुराने संस्करण को चला रहे हैं karma-cliक्योंकि उन्होंने कर्म को प्लगइन्स लोड करने के तरीके को अपडेट किया है। यह सुनिश्चित करने के लिए कि आपके पास नवीनतम संस्करण है, इसे चलाएं:

npm install -g karma-cli

1
इसने मेरे लिए इसे ठीक कर दिया। मेरे पास पहले बताई गई निर्भरताएं थीं, लेकिन कर्म-क्ली बाहर था, जाहिर है।
icfantv

1
इससे मेरी समस्या ठीक हो गई। धन्यवाद दोस्त
शेख

1
मैं इसमें भी भागा। जाहिर है, npm install -g karmaहै नहीं के रूप में एक ही बात npm install -g karma-cli
पीटर मजीद

@PeterMajeed जैस्मीन स्थापित करने के बाद, मैंने सोचा कि शायद मैं npm install -g karmaकाम कर सकता हूं लेकिन यह काम नहीं करता है। आप का उपयोग करेंnpm install -g karma-cli
कोबर्न

34

मेरी समस्या मेरी karma.config.jsफ़ाइल में थी:

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

इसके कारण अन्य karma-*प्लगइन्स को लोड नहीं किया जाना चाहिए, जिसमें शामिल हैं karma-jasmine


1
aleclarson's भी मेरी समस्या थी। के बाद से karma-webpackमेरी पहले से ही था package.jsonकी devDependencies, मैं इस पर टिप्पणी की pluginsमेरी में प्रवेश karma.config.jsफ़ाइल।
dave_k_smith

31

यदि आपकी विशेषता karma.conf.jsनिर्दिष्ट करती pluginsहै, karma-jasmineतो सूची में जोड़ना सुनिश्चित करें । यदि सभी प्लगइन्स पूर्वनिर्मित हैं karma-, तो आपको इस विशेषता को निर्दिष्ट करने की आवश्यकता नहीं है क्योंकि प्लगइन्स स्वचालित रूप से लोड हो जाएंगे।


6
धन्यवाद, इसने मेरी समस्या को हल कर दिया, प्लगइन्स में कर्म-चमेली जोड़ दिया!
सैंडिफ़

इस काम के लिए धन्यवाद - यह पूरी लाइन है। plugins: ['karma-jasmine', 'karma-chrome-launcher', 'karma-spec-reporter', 'karma-coverage'],
सैम डेयरिंग

6

यह मेरे साथ हुआ क्योंकि मैंने कर्म को विश्व स्तर पर स्थापित किया था, और जब मैंने कर्म शुरू किया तो यह वास्तव में मेरे देव निर्देशिका के बजाय / usr / ... में चला।

मेरे मामले में कर्म को हटाने के बजाय कर्म-क्ली को स्थापित करना था।

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

2

मेरी समस्या IntelliJ रन कॉन्फ़िगरेशन में चयनित "कर्म पैकेज" थी। मैंने प्रोजेक्ट के "नोड_मॉडल" फ़ोल्डर में प्रोजेक्ट के कर्म पैकेज का चयन नहीं किया: यहां छवि विवरण दर्ज करें


यह वही है जो मैं (लापता) की तलाश में था।
विवेगम
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.