npm त्रुटि स्थापित करें: rollbackFailedOptional


82

जब मैं npm installनए पैकेजों की कोशिश करता हूं तो यह मुझे यह त्रुटि दिखाता है:

rollbackFailedOptional: क्रिया npm-session 585aaecfe5f9a82

node --version
8.4.0

npm --version
5.3.0

1
मुझे भी वही त्रुटि हो रही है। क्या आपको इसके लिए कोई हल मिला?
अनिल

यह आपकी कंपनी के फ़ायरवॉल के कारण सबसे अधिक संभावना है। एक गैर कंपनी इंटरनेट कनेक्शन का उपयोग करें या एक प्रॉक्सी सेट करने का प्रयास करें जो आपकी कंपनी के व्यवस्थापक द्वारा एनपीएम रेपो सर्वर तक पहुंचने के लिए प्रदान किया गया हो।
प्रोमेथियस

जवाबों:


90
    # first this
    > npm config rm proxy
    > npm config rm https-proxy

    # then this
    > npm config set registry https://registry.npmjs.org/

मेरी समस्या हल कर दी।

दोबारा: यह जांचना सुनिश्चित करें कि आपके पास इंटरनेट ठीक से जुड़ा हुआ है या नहीं।


3
इस जानकारी के बारे में बताएं, मेरे लिए भी काम नहीं किया।
जॉर्जी

2
मेरे लिए, https://registry.npmjs.org/(https पर ध्यान दें) का उपयोग करने की आवश्यकता है
Walty Yeung

1
आप मेरा दिन को बचाने
Brilian Aringga

इससे दुर्भाग्य से मेरा मसला हल नहीं हुआ। मैं सिर्फ एक सरल होम नेटवर्क पर हूं, कोई प्रॉक्सी नहीं है, मुझे यह त्रुटि लंबे समय से है और बंद है, कभी-कभी जब मैं वीएस कोड का उपयोग करता हूं तो मैं एक cmd प्रॉम्प्ट (नॉन-वीएस कोड) खोल सकता हूं और यह काम करता है, लेकिन इसमें नहीं आईडीई। मैंने अभी-अभी NodeJS की स्थापना रद्द की है, AppData में सभी npm फ़ोल्डरों को हटा दिया है, फिर से स्थापित किया है और मेरे पास अभी भी यह त्रुटि है।
ल्यूक टी ओ ब्रायन

56

इसे इस्तेमाल करे

npm config rm proxy
npm config rm https-proxy

3
मैंने मेरे लिए भी काम किया, लेकिन क्या आप जानते हैं कि इस कमांड ने क्या किया और यह काम क्यों किया? मुझे आश्चर्य है कि अगर मुझे इसके बजाय कुछ स्थापित करने की आवश्यकता है। धन्यवाद!
aztec242

1
इसका कारण यह है कि किसी भी तरह, आपकी रजिस्ट्री सेटिंग्स डिफ़ॉल्ट के अलावा किसी और चीज़ के लिए सेट हो गई हैं, और ये आदेश उन कॉन्फ़िगरेशन सेटिंग्स को हटा देते हैं, उन्हें अपने डिफ़ॉल्ट मानों पर वापस जाने की अनुमति देते हैं। मेरे मामले में, मेरा काम एक कस्टम रजिस्ट्री का उपयोग करता है जिसे हाल ही में एक फ़ायरवॉल के पीछे रखा गया था। घर पर एक व्यक्तिगत परियोजना पर काम करना इसलिए मैं विशेष रूप से इस निर्देशिका में इस परियोजना के लिए npm सेटिंग्स को अधिलेखित करता हूं। अधिक विवरण के लिए नीचे @ lambda का उत्तर देखें।
एंडी ग्रॉफ

ठीक काम किया। रोलबैक की कोशिश करने के बाद .. फिर से दिखाई दिया लेकिन कुछ सेकंड के बाद चला गया। मैंने इसके साथ नैटस्क्रिप्ट सुविधा को स्थापित किया है। धन्यवाद
मोहम्मद अशरफुल इस्लाम

2
यह मेरे लिए तब तक काम नहीं आया जब तक मैं भी नहीं चलाnpm config set registry http://registry.npmjs.org/
डेविस

मेरे लिए समान @davis
kayleeFrye_onDeck

20

मेरे मामले में मुझे .npmrcसीधे संपादित करना था और मैन्युअल रूप से प्रॉक्सी सेटिंग्स जोड़ना था।

proxy=http://yourorganizationproxy.com:8080
https-proxy=http://yourorganizationproxy.com:8080

आशा है कि यह किसी की मदद करता है।


बहुत बहुत धन्यवाद! मेरे मामले में (कुबंटू) सेटिंग्स जहां किसी तरह के तहत उपयोगकर्ता .npmrc फ़ाइल में जोड़ा गया~/.npmrc
a1300

1
मुझे दुःख है कि जब npm रजिस्ट्री तक नहीं पहुँच सकता है, तो व्यवहार वहाँ एक आर्कन स्थिति संदेश के साथ लटका हुआ है और कोई संकेत नहीं है कि यह दूरस्थ होस्ट तक पहुँचने का प्रयास कर रहा है। अच्छी तरह से संचालित कमांड लाइन उपकरण उपयोगकर्ताओं को यह बताना चाहिए कि जब वे इंटरनेट का सामान कर रहे हों
मैट मोंटेग

मुझे प्रॉक्सी सेटिंग कहां मिल सकती है? @miqrc
अखिल

मुझे काम करने के लिए 'https_proxy' की चाभी बदलने की जरूरत थी, npm v6.13.4 का उपयोग करके
जेम्सपी

18

इसका कारण आपका वर्तमान एनपीएम रजिस्ट्री हो सकता है । किसी .npmrcफ़ाइल के लिए जाँच करने का प्रयास करें । ये विभिन्न स्थानों पर हो सकते हैं:

  • प्रति-प्रोजेक्ट कॉन्फ़िग फ़ाइल ( /path/to/my/project/.npmrc)
  • प्रति-उपयोगकर्ता कॉन्फ़िगर फ़ाइल ( ~/.npmrc)
  • वैश्विक कॉन्फ़िगरेशन फ़ाइल ( $PREFIX/etc/npmrc)
  • npm बिलिन विन्यास फाइल ( /path/to/npm/npmrc)

इनके भीतर कुछ ऐसा हो सकता है

registry=https://mycustomregistry.example.org

जो डिफ़ॉल्ट एक ( http://registry.npmjs.org/) पर प्राथमिकता लेगा । आप इस लाइन को फ़ाइल में हटा सकते हैं या इस तरह डिफ़ॉल्ट रजिस्ट्री का उपयोग कर सकते हैं:

npm <command> --registry http://registry.npmjs.org/

2
चल रहा npm config set registry http://registry.npmjs.org/है मेरे लिए प्रॉक्सी सेटिंग्स को कॉन्फ़िगर करने के बाद काम किया
रेनोवेशन_3

16

सबसे अधिक संभावना है कि npm रजिस्ट्री तक npm तक नहीं पहुंचा जा सकता है। Npm प्रॉक्सी कॉन्फ़िगरेशन की जाँच करें

मेरे पास Windows Server 2008 R2 पर बिल्कुल यही समस्या थी। मुझे पहली बार में Internet Explorer के एन्हांस्ड सिक्योरिटी कॉन्फ़िगरेशन पर संदेह था लेकिन बिना किसी सफलता के इसे बंद करने के बाद समस्या यह थी कि npm इंटरनेट के लिए मेरे कॉर्पोरेट प्रॉक्सी कनेक्शन का उपयोग करने के लिए कॉन्फ़िगर नहीं किया गया था।

यह पता चला है कि npm इंटरनेट विकल्प> कनेक्शन टैब> लैन सेटिंग्स के माध्यम से प्रॉक्सी सेटिंग्स का उपयोग नहीं करता है जहां सर्वर 'स्वचालित रूप से सेटिंग का पता लगाने' के लिए सेट है। सेटिंग्स का पता लगाने के लिए स्वचालित रूप से सेट होने की गारंटी नहीं देता है कि प्रॉक्सी वास्तव में उपयोग किया जा रहा है, इसका मतलब यह है कि विंडोज स्वचालित रूप से इंटरनेट एक्सप्लोरर के लिए प्रॉक्सी सेटिंग्स को कॉन्फ़िगर करेगा यदि यह http: // wpad पर एक विशेष'वॉटपेड 'फाइल पाता है । [yourdomain] .com] /wpad.dat

आप परीक्षण कर सकते हैं कि क्या आपके संगठन में एक वेब ब्राउज़र में निम्नलिखित टाइप करके wpad.dat फ़ाइल उपयोग में है।

http://wpad.[yourcompany.domain]/wpad.dat

यदि कोई फ़ाइल उपलब्ध नहीं है, तो संभावना है कि आप एक संगठन-व्यापी प्रॉक्सी का उपयोग नहीं कर रहे हैं। यदि कोई ब्राउज़र में वापस आ जाता है तो ...

इस फ़ाइल के नीचे, आपको एक पंक्ति देखनी चाहिए

PROXY <host:port>;

यदि आपके पास कई प्रॉक्सी उपलब्ध हैं तो इसे दोहराया जा सकता है। Npm को बताने के लिए होस्ट और पोर्ट की आवश्यकता है ताकि प्रॉक्सी सेटिंग्स का उपयोग किया जा सके:

npm config set proxy http://[host]:[port]

तथा

npm config set https-proxy http://[host]:[port]

उदाहरण के लिए यदि आपका प्रॉक्सी my.proxy.com पर पोर्ट 8080 पर है तो npm कमांड होगा:

npm config set proxy http://my.proxy.com:8080
npm config set https-proxy http://my.proxy.com:8080

एक बार जब मैंने npm को बताया था कि कौन सा प्रॉक्सी का उपयोग करने के लिए सभी ने काम करना शुरू कर दिया है, तो मैं बिना किसी समस्या के इंस्टॉल कमांड चलाने में सक्षम था।

Wpad फ़ाइल खोज के साथ मदद के लिए निम्नलिखित पोस्ट के लिए धन्यवाद ।


6

मैंने इस समस्या को ठीक करने के लिए निम्नलिखित विकल्पों की कोशिश की और यह काम कर गया।

  1. Node.js संस्करण 8 की स्थापना रद्द करें।
  2. Node.js संस्करण 6.11.4 स्थापित करें
  3. किसी भी पैकेज को स्थापित करने के लिए कमांड के साथ रजिस्ट्री विकल्प का उपयोग करें ।

उदाहरण के लिए मैं निम्नलिखित कमांड का उपयोग कर स्थापित करने के लिए।

npm install express --registry http://registry.npmjs.org/

या

npm install express -g --registry http://registry.npmjs.org/

यदि आप किसी विशिष्ट फ़ोल्डर में स्थानीय रूप से इंस्टॉल करना चाहते हैं तो नीचे दिए गए कमांड का उपयोग करें। नीचे कमांड पथ पर एक्सप्रेस स्थापित करेगा C:\Sample\Example1

C:\Sample1\Example1> npm install /Sample/Example1 express --registry http://registry.npmjs.org/

नोट: यदि आप किसी विशिष्ट स्थान पर स्थानीय रूप से स्थापित कर रहे हैं, तो पहले कमांड का उपयोग करके उस निर्देशिका पर जाएं और फिर कमांड से ऊपर चलाएं। यदि आप उस निर्देशिका के अंदर नहीं हैं और केवल कमांड में रास्ता दे रहे हैं जो काम नहीं करेगा।

यदि आपको package.jsonलापता त्रुटि मिलती है, तो स्थानीय रूप से पैकेज स्थापित करने से पहले कमांड से नीचे चलाएं

C:\Sample\Example1> npm init

ऊपर कमांड package.jsonफाइल बनाएगी । कोई डेटा प्रदान करने की आवश्यकता नहीं है। बस हिट दर्ज करें।

नोट: यदि आप एक फ़ायरवॉल के पीछे हैं तो आपको प्रॉक्सी सेट करने की आवश्यकता हो सकती है।


3

नमस्ते, मैं भी प्रतिक्रिया देने के लिए नया हूं और मुझे इस समस्या का सामना करना पड़ा क्योंकि मुझे बहुत परेशानी हुई, मैंने समाधान पाया: बस आपके कमांड प्रॉम्प्ट या टर्मिनल में चलाएं:

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

इससे आपकी समस्या दूर हो जाएगी। संदर्भ लिंक: http://blog.csdn.net/zhalcie2011/article/details/78726679


2
किसी समाधान के लिए लिंक का स्वागत है, लेकिन कृपया सुनिश्चित करें कि आपका उत्तर इसके बिना उपयोगी है: लिंक के चारों ओर संदर्भ जोड़ें ताकि आपके साथी उपयोगकर्ताओं को कुछ पता चले कि यह क्या है और यह क्यों है, तो पृष्ठ के सबसे प्रासंगिक हिस्से को उद्धृत करें ' मामले में लक्ष्य पृष्ठ अनुपलब्ध होने पर पुनः लिंक करना। ऐसे लिंक जो किसी लिंक से बहुत कम हैं उन्हें हटाया जा सकता है।
ग्रीम क्राउटन

3

सुनिश्चित करें कि आप npm में उपलब्ध कॉर्पोरेट रिपॉजिटरी तक पहुँच सकते हैं। आप वीपीएन कनेक्शन को चेक करें।

और इसे नीचे दिए गए डिफ़ॉल्ट रिपॉजिटरी में वापस रीसेट करें।

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

शुभ लाभ!!


3

निम्नलिखित आदेशों ने मेरी समस्या हल कर दी:

npm config set proxy http://yourproxyurl.com:8080  (you need to enter your or your company proxy URL and 8080 should be replaced by your proxy port)

npm config set https-proxy http://yourproxyurl.com:8080

1

यदि आपके पास रजिस्ट्री तक पहुंच है, लेकिन त्रुटि अभी भी हुई है तो ऊपर उल्लेखित कुछ भी काम नहीं करेगा। मैंने नोट किया कि यह समस्या केवल स्थानीय परियोजना की स्थापना के लिए लागू है (यानी यदि आप -g का उपयोग करके वैश्विक रूप से सब कुछ ठीक काम कर रहे हैं)।

मेरे लिए समस्या का हल क्या है: किसी प्रोजेक्ट के पैकेज.जॉन फ़ाइल से आप जो पैकेज स्थापित करने जा रहे हैं, उसके बारे में एक प्रविष्टि को हटा दें। उसके बाद npm पर अगली कॉल काम करेगी और पैकेज को सफलतापूर्वक स्थापित करेगी।


1

मैं एक ही प्रभाव PhpStorm के साथ एक प्रतिक्रिया अनुप्रयोग बना रहा था। और फिर अंत में यह सिर्फ कहता है done। टर्मिनल में एक ही कमांड चलाने से मुझे विस्तृत त्रुटियाँ मिलीं। मेरे द्वारा बनाए गए प्रोजेक्ट फोल्डर का नाम रखा गया था, reactजो एक नो-गो लगता है।

सुनिश्चित करें कि आपके प्रोजेक्ट फ़ोल्डर का नाम नहीं है react


0

इसे इस्तेमाल करे:

फ़ोल्डर में सभी फ़ाइल हटाएं:% APPDATA% \ npm-cache \ _locks


0

विंडोज के लिए: इंस्टॉलर को फिर से चलाएँ और इंस्टालेशन को 'रिपेयर' करें

मेरे लिए काम किया


0

यह बग अभी तय नहीं हुआ है [1]। कुछ लोग काम करते हैं, कुछ लोग नहीं। मुझे भी काम नहीं मिलता।

मैंने कमांड के साथ स्पष्ट कैश की कोशिश की: npm cache verifyफिर से इंस्टॉल कमांड को फिर से चलाएं। मुझे काम मिल गया।

[१]। https://github.com/npm/npm/issues/17246


0

मेरी भी यही समस्या थी। लेकिन यह कंपनी के आंतरिक नेटवर्क से आगंतुक नेटवर्क पर स्विच करने के साथ ठीक से चल सकता है।


0

मैंने दो सिस्टम पर्यावरण चर निर्धारित किए हैं -

  1. HTTP_PROXY = <_proxy_url_>
  2. HTTPS_PROXY = <_proxy_url_>

यह वास्तव में मेरे लिए काम किया।


0

कुछ दुर्लभ अवसरों में, जांचें कि प्रोजेक्ट को नियमित npmकमांड का उपयोग करके बनाया जा सकता है । मैं एक के साथ काम करने के लिए कॉन्फ़िगर किया गया है bower, इसलिए bower install <github_url>काम करता है, जबकि npm install <github_url>सभी प्लेटफार्मों पर उस अनैतिक गूढ़ त्रुटि संदेश देता है ...


0

कोणीय कमांड लाइन टूल (सीएलआई) को स्थापित करते समय, यदि आपको रोलबैक त्रुटि मिल रही है, तो हो सकता है कि यह आपके नेटवर्क के कारण आपके क्लाइंट नेटवर्क या आपके कंपनी नेटवर्क से जुड़ा हो, जहां आप काम कर रहे हैं।

तो कृपया अपने सार्वजनिक नेटवर्क (या अपने मोबाइल के हॉटस्पॉट नेटवर्क) में सीएलआई स्थापित करने का प्रयास करें, फिर आप निश्चित रूप से सीएलआई स्थापित करेंगे।


0

समाधान : 'प्रॉक्सी' का डिफ़ॉल्ट मान और npm कॉन्फिग का 'https-प्रॉक्सी' कुंजी NULL है। कुछ और आरएंडडी करने के बाद फिर मैंने प्रॉक्सी सेटिंग वैल्यू को उपरोक्त कुंजी पर सेट करने की कोशिश की (यह समाधान मेरे परिदृश्य में काम करता है)।

इसके अलावा, उसी प्रॉक्सी सेटिंग्स को IE ब्राउज़र इंटरनेट सेटिंग्स >> सेटिंग्स >> लैन सेटिंग्स में लागू किया जाना चाहिए।

निष्कर्ष : कॉर्पोरेट / कुछ वातावरण में प्रॉक्सी कुछ हद तक अनिवार्य है अन्यथा npm इंस्टॉल काम नहीं करेगा।

GitHub पर जारी: https://github.com/SharePoint/sp-dev-docs/issues/3266

आप विस्तृत जानकारी के लिए ब्लॉग का उल्लेख कर सकते हैं https://blogs2share.blogspot.com/2019/01/spfx-environment-setup-error.html


0

यदि आपके नेटवर्क में कोई प्रॉक्सी है, तो आप डाउनलोड करके इस प्रक्रिया को रोक सकते हैं। मेरी कंपनी के नेटवर्क में एक फ़ायरवॉल सक्षम था, जो मेरे लिए समस्या पैदा कर रहा था। इसलिए मुझे एक अन-सिक्योर नेटवर्क (शायद आपके मोबाइल नेटवर्क से एक हॉटस्पॉट) पर स्विच करना पड़ा, और यह मेरे लिए काम कर गया।


0

McAfee फ़ायरवॉल के कारण मेरा था। यह आस्क मोड पर सेट है, इसलिए इंटरनेट कनेक्शन के लिए पूछने के लिए संकेत देना चाहिए, लेकिन ऐसा नहीं हुआ! McAfee और (अस्थायी रूप से!) में जाकर फ़ायरवॉल को अक्षम करने से मुझे स्थापित करने की अनुमति मिली।


0

मैं पहले से ही ऊपर वर्णित के रूप में परदे के पीछे सेट है और यह आज तक काम कर रहा था। फिर यह पता चला कि अब मुझे अपने प्रॉक्सी पते के सामने "http: //" की आवश्यकता है: "http: // {xyURL}: {xyPort}"। फिर आखिरकार काम हो गया।


0

यह पता लगाने से पहले कुछ समय के लिए इस मुद्दे के साथ संघर्ष किया।
मैं उच्च सिएरा (10.13.6) का उपयोग कर रहा
अनइंस्टॉल किया गया और फिर से स्थापित नोड और nvm कई बार - का उपयोग करते हुए installer.pkg, HomeBrew, और फिर कमांड लाइन का उपयोग कर। IMO, कमांड लाइन सबसे अच्छा काम करती है।

मैंने इन चरणों का पालन किया:
1. रैन npm config ls -l
2. जाँच की कि मान globalconfigथा, $<installpath>/.nvm/versions/node/v12.16.3/etc/npmrcलेकिन जब मैंने टर्मिनल में इस पथ पर जाने की कोशिश की, तो इसने मुझे दिया No such file or directory
तो मैंने
3. फ़ोल्डर etcबनाया, npmrcफ़ाइल बनाई और उसमें यह लाइन जोड़ी।

registry = "https://registry.npmjs.org/"


मेरे पास~/.npmrc$HOME

तब
4. में फाइल नहीं है । मैंने npm installकमांड को फिर से चलाया ।


ध्यान दें कि यह अभी भी rollbackFailedOptional: verb npm-sessionत्रुटि को फेंक देता है, लेकिन इस बार यह पूरी हो गई , हालांकि एक अलग त्रुटि के साथ। आप इन चरणों को आज़मा सकते हैं और देख सकते हैं कि क्या यह काम करता है।

जो लोग उत्सुक हैं के लिए, यह एक फेंक दिया Response timeout while trying to fetch https://registry.npmjs.org/<package> (over 30000ms)त्रुटि, तो मैं जोड़ा timeout = "60000"करने के लिए /etc/npmrc(के रूप में एक और Stackoverflow धागे पर पाया जाता है) फ़ाइल, और फिर से कोशिश की। इसने मेरे लिए काम किया।

उम्मीद है की यह मदद करेगा!


0

समस्या हल करने के लिए यहां दिए गए सभी आदेशों को आज़माएं https://stackoverflow.com/a/54173142/12142401 अगर समस्या बनी रहती है तो निम्न चरण करें

पूरी तरह से नोडज चेकआउट की स्थापना रद्द करें इस जवाब को नोडज की पूरी स्थापना रद्द करें https://stackoverflow.com/a/20711410/12142401

अपनी वेबसाइट से अपडेट किए गए नोडज सेटअप को डाउनलोड करें, इसे किसी भी ड्राइव में इंस्टॉल करें, लेकिन पहले से इंस्टॉल किए गए ड्राइव पर नहीं जैसे कि अगर आप सी ड्राइव में इंस्टॉल करते हैं तो डी, एस, जी ड्राइव में इंस्टॉल करें अपने npm कमांड को चलाएं यह पूरी तरह से ठीक काम करेगा


-2

इसे इस्तेमाल करे। इसने मेरे लिए अच्छा काम किया

npm स्थापित / your_floder_location package_name --registry http://registry.npmjs.org/

नीचे मेरी लार्वा परियोजना (मेरा प्रोजेक्ट नाम vue_laravel) में वाउ-राउटर पैकेज स्थापित करने के लिए सटीक आदेश है

aslam004: vue_laravel $ npm install / var / www / html / प्रोजेक्ट्स / vue_laravel vue-router --registry http://registry.npmjs.org/

सौभाग्य


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