কমান্ডটি চালানোর সময় আমি grunt
নিম্নলিখিত সতর্কতাটি পাই:
Running "karma:unit" (karma) task
Warning: No provider for "framework:jasmine"! (Resolving: framework:jasmine) Use --force to continue.
কেউ কীভাবে এই সমস্যাটি সমাধান করবেন জানেন?
উত্তর:
ইওমান কৌণিক জেনারেটর (ইও কৌনিক) একটি নতুন প্রকল্প তৈরি করার পরে আমার একই ত্রুটি হয়েছিল।
আমার জন্য সমাধানটি প্যাকেজ.জসনে ডেভিনির্ভরতাগুলিতে "কর্ম-জুঁই" যুক্ত করে আবার "এনপিএম ইনস্টল" চালাচ্ছিল।
npm install karma-jasmine --save-dev
এটি ত্রুটির বার্তাটির সমাধান করেছে "" ফ্রেমওয়ার্ক: জুঁই "এর কোনও সরবরাহকারী নয়!"
দেব-নির্ভরতাগুলিতে আমাকে একটি ক্রমা ব্রাউজার প্রবর্তকও যুক্ত করতে হয়েছিল, যেহেতু আমি বার্তা পেয়েছি যে কোনও লঞ্চার ইনস্টল করা হয়নি (দেখুন http://karma-runner.github.io/0.10/config/browser.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"
}
}
আমি কর্ম-সাফারি-লঞ্চারটি ব্যবহার করতে karma.conf en karma-e2e.conf এ নিম্নলিখিত লাইনটি পরিবর্তন করেছি:
browsers: ['Safari'],
আমি আশা করি এটি আপনার জন্যও কার্যকর হবে।
Error: No provider for "framework:karma-chrome-launcher"!
পরে পেয়েছি
: হিসাবে @Taco বলেন, এই সমস্যার জন্য ডিফল্ট সমাধান উপযুক্ত প্লাগইন, ভালো ইনস্টল করা হয় npm install karma-jasmine --save-dev
বা এই: npm install karma-mocha --save-dev
।
যাইহোক, এই ত্রুটিটি তখনও প্রত্যাশিত হয় যখন আপনি কোনও পুরানো সংস্করণ চালাচ্ছেন karma-cli
কারণ তারা যেভাবে প্লাগইনগুলি লোড করে লোকে হালনাগাদ করেছিলেন সেগুলি আপডেট করেছিল। আপনার সর্বশেষতম সংস্করণ রয়েছে তা নিশ্চিত করতে এটি চালান:
npm install -g karma-cli
npm install -g karma
হয় না একই জিনিস npm install -g karma-cli
।
npm install -g karma
তবে এটি কার্যকর হয় না। আপনার অবশ্যই ব্যবহার করতে হবেnpm install -g karma-cli
আমার সমস্যাটি আমার karma.config.js
ফাইলে ছিল:
plugins: [require("karma-webpack")]
এর ফলে অন্য সৃষ্ট karma-*
প্লাগিন লোড করা হবে না, যার মধ্যে karma-jasmine
।
karma-webpack
ইতিমধ্যে আমার মধ্যে ছিলpackage.json
এরdevDependencies
, তাই আমি plugins
আমার karma.config.js
ফাইলে এই এন্ট্রিটি সম্পর্কে মন্তব্য করেছি ।
যদি আপনি karma.conf.js
কোনও plugins
বৈশিষ্ট্য নির্দিষ্ট karma-jasmine
করে থাকেন তবে তালিকায় যোগ করার বিষয়টি নিশ্চিত হন । সমস্ত প্লাগইনগুলির সাথে উপসর্গ করা থাকলে karma-
, প্লাগইনগুলি স্বয়ংক্রিয়ভাবে লোড হবে বলে আপনাকে এই বৈশিষ্ট্যটি নির্দিষ্ট করার দরকার নেই।
plugins: ['karma-jasmine', 'karma-chrome-launcher', 'karma-spec-reporter', 'karma-coverage'],
আমার কাছে এটি ঘটেছিল কারণ আমি বিশ্বব্যাপী কর্মফল ইনস্টল করেছিলাম এবং যখন আমি কর্ম শুরু করার জন্য কমান্ডটি চালিত করেছি তখন এটি আমার ডিভ ডিরেক্টরি থেকে বরং / ইউএসআর / ... এ চলেছিল।
আমার ক্ষেত্রে সমাধানটি ছিল कर्मফল সরানো এবং পরিবর্তে কর্মফল-ইনস্টল করা।
npm remove -g karma
npm install -g karma-cli
npm install karma-chrome-launcher --save-dev