এনপিএম ইনস্টল কেন আমাকে আনমেট নির্ভরতা বলে?


404

আমার একটি নোড প্যাকেজ আছে আমি যখন npm installপ্যাকেজ রুট থেকে চালাই , এটি কিছু গোছা ইনস্টল করে, তবে তারপরে বেশ কয়েকটি ত্রুটি বার্তা প্রিন্ট করে:

এনপিএম ওয়ার আনমেট নির্ভরতা / ব্যবহারকারী / সানমেকসেসি / গুগল_ড্রাইভ / কোড / এক্সপ্লোর / জেনারেটর / নোড_মডিউলস / সন্ধান / সিঙ্ক / নোড_মডিউল / গ্লোব এর জন্য গ্রেফুল -fs@'~1.2.0 'প্রয়োজন তবে লোড হবে

আমাকে ঠিক কী করবে npm installসে সম্পর্কে অবশ্যই বিভ্রান্ত হতে হবে । যদি এটি নির্ভরতা সনাক্ত করে, এটি ইনস্টল করা উচিত নয়? কোন পরিস্থিতিতে এটি আমাকে ত্রুটি বার্তাগুলি দেয় এবং আমি কীভাবে নির্ভরতাগুলি সমাধান করতে পারি?

উত্তর:


397

আমি বিশ্বাস করি যেহেতু নির্ভরতা রেজোলিউশনটি কিছুটা ভাঙা হয়েছে, দেখুন https://github.com/npm/npm/issues/1341#issuecomment-20634338

নিম্নলিখিত সম্ভাব্য সমাধান নিম্নলিখিত:

  1. অ্যানমেট নির্ভরতা সহ ম্যানুয়ালি শীর্ষ-স্তরের মডিউলগুলি ইনস্টল করতে হবে: npm install findup-sync@0.1.2

  2. আপনার প্যাকেজ.জসনকে পুনর্গঠন করুন। নীচের অংশে সমস্ত উচ্চ-স্তরের মডিউল (অন্যদের মডিউলগুলির জন্য নির্ভরতা হিসাবে কাজ করে) রাখুন।

  3. npm installকমান্ড পুনরায় রান করুন ।

সময়সীমা বা অন্য কোনও কিছুর কারণে এনপিএমের সমস্ত প্যাকেজ ডাউনলোড করতে ব্যর্থ হওয়ার কারণে সমস্যা দেখা দিতে পারে।

দ্রষ্টব্য: আপনি ব্যর্থ প্যাকেজগুলি নিজে ব্যবহার করার পাশাপাশি ইনস্টল করতে পারেন npm install findup-sync@0.1.2

দৌড়ানোর আগে npm install, নিম্নলিখিত পদক্ষেপগুলি সম্পাদন করতে সহায়তা করতে পারে:

  • ব্যবহার করে নোড_মডিউলগুলি সরান rm -rf node_modules/
  • চালান npm cache clean

কেন কখনও কখনও 'নোড_মডিউলগুলি অপসারণ করা' প্রয়োজনীয়? যখন কোনও নেস্টেড মডিউলটি ইনস্টল করতে ব্যর্থ হয় npm install, npm installপরবর্তীগুলি সেই অনুপস্থিত নেস্টেড নির্ভরতাগুলি সনাক্ত করতে পারে না।

যদি এটি হয় তবে কখনও কখনও এটি নিখোঁজ নেস্টেড মডিউলগুলির শীর্ষ স্তরের নির্ভরতা অপসারণ এবং npm installআবার দৌড়ানো যথেষ্ট । দেখা


22
নোড মডিউলগুলি সরিয়ে এবং ক্যাশে পরিষ্কার করা এটি আমার পক্ষে কাজ করে।
মার্কোহিল

4
'নোড_মডিউলস' সরানো, 'এনপিএম ক্যাশে ক্লিন' চালানো এবং তারপরে 'এনপিএম ইনস্টল' চালানো আমার সমস্যাটি স্থির করেছে। ত্রুটি ছাড়াই সমস্ত নির্ভরতা লোড না হওয়া পর্যন্ত আমাকে তিনবার 'এনপিএম_ইনস্টল' চালাতে হয়েছিল।
হেনড্রিক্স

2
npm cache cleanঅ্যাক্সেস কারণে যদি কাজ না করে, চেষ্টা করুন sudo npm cache clean
সুরেশ

12
@ সোরেশ অন্ধভাবে কেবল এমন জিনিসগুলিতে সুডো যুক্ত করে যা সঠিকভাবে কাজ করে না যাদুকরীগুলি এগুলিকে ঠিক করে দেয় না, এর অর্থ আপনি কী জানেন তা জানেন না।
এডগার আরুটিউনিয়ান

5
এনপিএমের জন্য অন্য "সমাধান" কেন আরএম আর নোড_মডিউলগুলি অন্তর্ভুক্ত করে? এবং কেন এটি বেশিরভাগ ক্ষেত্রেই সত্যই একমাত্র বিকল্প? এটি কোনও প্যাকেজ ম্যানেজারের মতো কাজ করা উচিত ঠিক তা নয়
ফিলি 294

83

এটি যখন আমার সাথে ঘটেছিল যখন ডাব্লুআইপিআই যখন নেমেছিল তখন npm install। অপসারণ node_modulesএবং পুনরায় চলমান npm installএটি স্থির করে।


26
এবং চেষ্টা করুন npm cache clean
ijse

5
নোড পুনরায় ইনস্টল করা প্রয়োজনীয় নয়, তবে এটি করার npm cache cleanএবং অপসারণের মধ্যে node_modulesএই পরামর্শটি আমার পক্ষে কাজ করেছে।
রিচলিট

@ রিচলিট, হ্যাঁ npm cache cleanআমার পক্ষে যথেষ্ট ছিল না, node_modules"ইনস্টল" এর সময় নেটওয়ার্ককৃত ব্যর্থতার পরে কাজটি করার জন্য আমাকে পাশাপাশি কাজটি সরিয়ে ফেলতে হয়েছিল।
মার্ক টমলিন

আমি কোন node_modulesডিরেক্টরি মুছে ফেলার মত বিভ্রান্ত ? ত্রুটির সাথে /usr/local/lib/node_modules/npm/node_modules/read-installed/node_modules/readdir-scoped-modules requires graceful-fs@'^4.1.2'
আমারও

1
শীর্ষস্থানীয় এক।
জিওন

33

আমি এই কমান্ড লাইনগুলি ব্যবহার করে সমস্যার সমাধান করেছি

  • $ rm -rf node_modules/
  • $ sudo npm update -g npm
  • $ npm install

হয়ে গেল!


5
সুডো এনপিএম আপডেট-জি এনএমপি চালানোর পরে, আমার এনএমপি অকেজো হয়ে গেছে, "এনপিএম ইআরআর-এ কোনও ফলাফল ইনস্টল করার যে কোনও প্রয়াস! মডিউল 'পঠন-প্যাকেজ-জেসন' খুঁজে পাচ্ছে না" এই ভোটটি বাতিল করতে হবে
মাইকেল বি

এটি আমার এবং অন্যান্য মানুষের পক্ষে কাজ করেছিল, সম্ভবত আপনার অন্য কোনও সমস্যা আছে। পঠন-প্যাকেজ- sudo npm install -g read-package-json
জেসনকে

8
সাবধানতা: আপনার সাথে সুডো ব্যবহার করা উচিত নয় npm, পরিবর্তে এনএমপি ডিরেক্টরি লিখতে চান বলে অনুমতি বা মালিকানার পরিবর্তনের পরামর্শ দেওয়া হয়।
Sgnl

1
সেখানেও "এনপিএম ক্যাশে ক্লিন" যুক্ত করতে চাইতে পারে
আলেকজান্ডার মিলস

1
sudoএনপিএম দিয়ে ব্যবহার করবেন না
গ্রান্ট

11

সর্বশেষ সংস্করণে এনপিএম আপগ্রেড করা এটিকে ব্যাপকভাবে সহায়তা করতে পারে। উপরের ডুলের উত্তরটি সঠিকভাবে বলা যায় যে নির্ভরতা পরিচালনা কিছুটা ভাঙা, তবে মনে হয় এটি মূলত এনপিএমের পুরানো সংস্করণগুলির জন্য।

কমান্ডটি npm listআপনাকে সমস্ত ইনস্টল করা তালিকা দেয় node_modules। আমি যখন সংস্করণ ১.৪.২ থেকে সংস্করণ ২.7.৪ এ আপগ্রেড করেছি তখন অনেকগুলি মডিউল যা আগে পতাকাঙ্কিত ছিল সেগুলি WARN unmet dependencyআর সে হিসাবে চিহ্নিত করা হয়নি।

এনপিএম আপডেট করার জন্য আপনার npm install -g npmম্যাকোএসএক্স বা লিনাক্স টাইপ করা উচিত । উইন্ডোজে, আমি দেখেছি যে নোডেজ ইনস্টলারটি পুনরায় ডাউনলোড এবং পুনরায় চালানো এনপিএম আপডেট করার আরও কার্যকর উপায় way


সেন্টোস 7 রেপোগুলিতে বিতরণ করা এনপিএম সংস্করণে আমার একই সমস্যা ছিল। আমি নোড.জেএস থেকে সর্বশেষ এনপিএম সংস্করণ ইনস্টল করেছি এবং সমস্যাটি অদৃশ্য হয়ে গেছে, তাই আপনার অধিকারটি আমি মনে করি এটি পুরানো সংস্করণ সহ একটি সমস্যা হতে পারে।
এলুয়ান কেরেল-এমনকি

9

উপরের উত্তরগুলি node_modulesডিরেক্টরি মুছে ফেলার পরেও আমাকে পুরোপুরি সহায়তা করে নি ।

নীচে কমান্ড শেষ পর্যন্ত আমাকে সাহায্য করেছে:

npm config set registry http://registry.npmjs.org/

নোট করুন যে এটি কোনও সুরক্ষিত এইচটিটিপি সংযোগের উপরে নোড মডিউলগুলি টানছে।

এসসিআর: https://stackoverflow.com/a/13119867/4082503


এটি আমাকে যেমন সহায়তা করেছিল তেমনি আমার হোস্ট ট্রাফিককে পুনর্নির্দেশ করছে।
ডিমিগুয়েল

1
@ ডিমগল জেনে ভাল লাগলো :)
বিনয় ভেমুলা

1
@ ডিজেল আপনি অন্যান্য উত্তরগুলিও ব্যবহার করে দেখেছেন? আপনাকে npm installএকাধিকবার চালাতে হবে এবং / অথবা ম্যানুয়ালি কিছু নোড প্যাকেজ একে একে ইনস্টল করতে হবে।
বিনয় ভেমুলা

4

প্রত্যেকের জন্য -- UNMET PEER DEPENDENCY জন্য, প্রাক্তন জন্য। -- UNMET PEER DEPENDENCY rxjs@5.0.0-rc.2, npm install --save rxjs@5.0.0-rc.2আপনার আর কিছু না হওয়া পর্যন্ত সেই নির্ভরতা ইনস্টল করুনUNMET DEPENDENCIES

শুভকামনা


1
আমাকে নতুন ত্রুটি সহ একই ত্রুটিগুলি সহ ছেড়ে দেয়:ERR! code 1
ওয়াউটার ভ্যানহের্ক

1
@ ওয়াটারভ্যানহার্ক আপনি দয়া করে চেষ্টা করতে পারেন rm -rf node_modules, তারপর npm cache cleanএবং npm install। এটি এখনও কাজ না করে তাহলে, আমি তোমাকে আবার সুপারিশ rm -rf node_modulesতারপর, npm i -g yarnএবং তারপর yarn installসুতা পরিচালনা করতে বেশ ভাল node_modules। শুভকামনা
আকাশ

1
হ্যাঁ, এটি কি peerDependenciesজন্য হয়। আপনাকে সংস্করণটির সচেতন পছন্দে ঠেলাতে।
কামাফেদার

3

আমি দৌড়াই npm list আনমেট ডিপেন্ডেন্সী হিসাবে তালিকাভুক্ত সমস্ত প্যাকেজ চালিয়ে ইনস্টল করেছি

এই ক্ষেত্রে:

├── UNMET DEPENDENCY css-loader@^0.23.1
npm install css-loader@^0.23.1


2

এটি আমার জন্য এটি সমাধান করেছে:

  1. সংস্করণ নম্বরগুলি সংশোধন করুন package.jsonত্রুটি অনুসারে ;
  2. সরান node_modules(rm -rf node_modules );
  3. পুনরায় npm install

কোনও ত্রুটি না হওয়া পর্যন্ত এই পদক্ষেপগুলি পুনরাবৃত্তি করুন।


1

অনুরূপ শিরাতে কিছু জিনিস, আমি অন্য একটি পদক্ষেপ যুক্ত করব।

মনে রাখবেন যে এনএমপি সংস্করণ> 1.4.9 এ, 'এনপিএম ইনস্টল' ডিভডিপেন্ডেন্সগুলি ইনস্টল করে। প্রথমে বিদ্যমান মডিউল এবং ক্যাশে মুছে ফেলার চেষ্টা করুন:

remove node_modules $ rm -rf node_modules/
run $ npm cache clean

তারপরে চেষ্টা করুন:

npm install --dev
npm update --dev

এটি অন্তত পুনরাবৃত্তি নির্ভরতা সমাধান সমাধান করবে।


6
- দেবদেব পতাকা কিসের জন্য?
আলেকজান্ডার মিলস

1

- দেবতা নির্ভরতা পুনরাবৃত্তভাবে ইনস্টল করে (এবং এটি চিরতরে চালায় ..) কীভাবে এটি সংস্করণের পার্থক্যগুলি সমাধান করতে সহায়তা করতে পারে?

আপনি নোড_মডুলস ফোল্ডারটি সরিয়ে চেষ্টা করতে পারেন, তারপরে এনএমপি ক্যাশে পরিষ্কার করুন এবং তারপরে আবার 'এনপিএম আই' চালিয়ে যান


1

আমি প্রতিক্রিয়া নেটিভ সিএলআই ইনস্টল করার সময় আমার একই সমস্যা ছিল। আমি /node_modulesউত্তরগুলি পড়ার পরে কোন ডিরেক্টরিটি সরিয়ে নেব তা নিশ্চিত ছিলাম না । শেষ পর্যন্ত আমি দৌড়ে গেলাম

npm update -g

এবং এর পরে প্যাকেজ ইনস্টল করতে সক্ষম হয়েছিল।


1

আমি চলমান একটি অটোমেটেড ডিপ্লোমেন্ট সিস্টেমে কাজ করার চেষ্টা করছিলাম npm install, সুতরাং এই সমাধানগুলির অনেকগুলি একটি অটোমেটেড ফেশে আমার পক্ষে কাজ করবে না। আমি মুছে ফেলার / পুনরায় তৈরি করার মতো অবস্থানে ছিলাম না node_modules/আমি সহজেই নোড.জেএস সংস্করণগুলিও পরিবর্তন করতে পারি।

সুতরাং আমি দৌড় শেষ করেছি npm shrinkwrap- npm-shrinkwrap.jsonআমার স্থাপনার বান্ডিলটিতে ফাইল যুক্ত করে এবং সেখান থেকে ইনস্টলগুলি চালানো। এটা আমার জন্য সমস্যা স্থির করে; 'সহায়ক' হিসাবে সঙ্কুচিত ফাইলের সাথে, এনএমপি মনে হয়েছিল সঠিক প্যাকেজগুলি খুঁজে পেতে এবং সেগুলি আমার জন্য ইনস্টল করতে সক্ষম হবে। (সঙ্কোচনের অন্যান্য বৈশিষ্ট্যও রয়েছে, তবে এই বিশেষ ক্ষেত্রে আমার এটির প্রয়োজন ছিল)।


1

আমি প্রতিক্রিয়া প্যাকেজ ইনস্টল করার সময় আমি এই সমস্যার মুখোমুখি হয়েছিল এবং এটি আমার জন্য কাজ করেছে: npm install --save <package causing this error>



1

npm installথেকে সমস্ত প্যাকেজ ইনস্টল করা হবে npm-shrinkwrap.json, তবে প্যাকেজগুলিকে অগ্রাহ্য করা package.jsonনা থাকলে এটিকে এড়িয়ে যেতে পারে ।

যদি আপনার প্রকল্পটির একটি থাকে তবে npm-shrinkwrap.jsonনিশ্চিত হয়ে নিন যে আপনি npm shrinkwrapএটি পুনঃজেনার করতে ছুটে গেছেন , প্রতিবার আপনি যুক্ত / অপসারণ / পরিবর্তন যুক্ত করুন package.json


0

আপনার কৌণিক সংস্করণ সম্পর্কে যত্ন নিন, আপনি যদি কৌনিক ২.২.৫.০ এর অধীনে কাজ করেন তবে আপনার কৌনিক xx.৪ xxx এ উন্নতি করতে হবে

কিছু নির্ভরতা কৌণিক 4 প্রয়োজন

কৌণিক 4 কীভাবে ইনস্টল করবেন বা আপনার প্রকল্প আপডেট করবেন তার টিউটোরিয়াল এখানে।


0

4.0.0.0 এ আপডেট করা হচ্ছে

4 এ আপডেট করা আপনার কৌনিক নির্ভরতা সর্বশেষতম সংস্করণে আপডেট করার মতো সহজ এবং আপনি অ্যানিমেশনগুলি চান কিনা ডাবল চেক করা। এটি বেশিরভাগ ব্যবহারের ক্ষেত্রে কাজ করবে।

লিনাক্স / ম্যাকে:

npm install @angular/{common,compiler,compiler-cli,core,forms,http,platform-browser,platform-browser-dynamic,platform-server,router,animations}@latest typescript@latest --save 

উইন্ডোজে:

npm install @angular/common@latest @angular/compiler@latest @angular/compiler-cli@latest @angular/core@latest @angular/forms@latest @angular/http@latest @angular/platform-browser@latest @angular/platform-browser-dynamic@latest @angular/platform-server@latest @angular/router@latest @angular/animations@latest typescript@latest --save

তারপরে এনজি সার্ভিস বা এনপিএম স্টার্ট কমান্ড আপনি সাধারণত ব্যবহার করেন যা চালান এবং সমস্ত কিছু কাজ করা উচিত।

আপনি যদি অ্যানিমেশনগুলির উপর নির্ভর করেন তবে আপনার মূল BrowserAnimationsModuleথেকে নতুনটি আমদানি করুন । এটি না করে আপনার কোডটি সংকলন ও চালিত হবে তবে অ্যানিমেশনগুলি ত্রুটিটিকে ট্রিগার করবে। আমদানিগুলি হ্রাস করা হয়েছে, নতুন প্যাকেজ থেকে আমদানি ব্যবহার করুন@angular/platform-browser/animationsNgModule@angular/core

import { trigger, state, style, transition, animate } from '@angular/animations';.
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.