ELIFECYCLE Node.js त्रुटि का क्या अर्थ है?


211

ELIFECYCLE का क्या अर्थ है?

यहाँ मेरा ऐप कोड है: https://gist.github.com/samholmes/388ca4552c5936b52c5d

जब मैं 'ब्लास्ट-ईमेल' कमांड चलाता हूं, तो यह कुछ समय के लिए चलेगा जब तक कि एरर क्रैश न हो जाए:

npm ERR! Linux 3.2.0-4-amd64
npm ERR! argv "/root/.nvm/versions/io.js/v1.6.1/bin/iojs" "/root/.nvm/versions/io.js/v1.6.1/bin/npm" "run" "live"
npm ERR! node v1.6.1
npm ERR! npm  v2.7.1
npm ERR! code ELIFECYCLE
npm ERR! emailer@0.0.0 live: `NODE_ENV=production node app.js`
npm ERR! Exit status 137
npm ERR! 
npm ERR! Failed at the emailer@0.0.0 live script 'NODE_ENV=production node app.js'.
npm ERR! This is most likely a problem with the emailer package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     NODE_ENV=production node app.js
npm ERR! You can get their info via:
npm ERR!     npm owner ls emailer
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /apps/emailer/npm-debug.log

npm-debug.logफ़ाइल भी सार में शामिल है।

मुझे दो में से एक उत्तर की तलाश है: ELIFECYCLE का क्या अर्थ है? (या) मुझे अपने आवेदन कोड में त्रुटि क्यों हो रही है?


मेरी वेबपैक प्रक्रिया से बस वही त्रुटि मिली (कुछ घंटों में पुनः आरंभ नहीं हुई, और मैंने एक बदलाव किया जिसने वेबपैक निर्माण को तोड़ दिया)। अन्यथा मैंने पहले कभी त्रुटि नहीं देखी, और प्रक्रिया को पुनरारंभ करने से समस्या हल हो गई।
सहयोगी

1
ps -ax | grep npm .. और मार डालो
npm

जवाबों:


62

यह मूल रूप से कह रहा है कि यह आपकी प्रक्रिया को अनुमति के कारण नहीं बल्कि आपकी स्क्रिप्ट में त्रुटि के कारण विफल करता है। स्रोत

आपको कोई समस्या नहीं है NODE_ENV=production node app.js?


मुझे स्क्रिप्ट निष्पादित करने में कोई समस्या नहीं है। वास्तव में, यह ठीक काम करता है। मुझे केवल 'ब्लास्ट-ईमेल्स' चलाने के दौरान यह त्रुटि मिलती है, जो एक async.eachSeries लूप करता है और नोडमैलर का उपयोग करके ईमेल भेजता है और आप जिस मॉर्डल ट्रांसपोर्ट को सोर्स कोड में देख सकते हैं। क्या यह नोडमैलर या परिवहन के साथ एक मुद्दा हो सकता है?
सैम

emailer.js में, एक 'त्रुटि' फ़ंक्शन के संदर्भ हैं लेकिन मैं इसे नहीं ढूंढ सकता।
पियरे इंगलेबर्ट

emailer.js में कौन सा कार्य?
सैम

उदाहरण के लिए यह एक: gist.github.com/samholmes/388ca4552c5936b52c5d#file-app-js-L57
पियरे

त्रुटि फ़ंक्शन को उस दायरे के नीचे परिभाषित किया गया है: gist.github.com/samholmes/388ca4552c5936b52c5d#file-app-js-L81
Sam

43

कोई ऐसा सोच सकता है क्योंकि npm और नोड के पुराने संस्करण हैं, लेकिन ऐसा नहीं है।

जैसा कि पियरे इंगलबर्ट कहते हैं, यदि आप स्रोत को देखते हैं तो आप देख सकते हैं कि End of lifecycleकार्यक्रम अप्रत्याशित रूप से बंद हो गया है। इसके विभिन्न कारण हो सकते हैं। तो यह एक सिंटैक्स त्रुटि नहीं है और अपेक्षित अपवाद / त्रुटि नहीं है।

त्रुटि तब मुझे दिखाई दी जब एक अलग उपकरण पहले से ही मेरी नोड स्क्रिप्ट में परिभाषित http पोर्ट (3000) का उपयोग कर रहा था। जब आप अपना नोड ऐप पोर्ट 80 पर चलाते हैं, तो सुनिश्चित करें कि आपने अपाचे वेबसर्वर (उदाहरण के रूप में) को रोक दिया है।


2
मेरे लिए एक ही, बंदरगाह अन्य प्रोग्राम द्वारा इस्तेमाल किया गया था
डंठल


1
मेरे मामले में मैंने Error: listen EADDRINUSE :::3000चेतावनी को नोटिस नहीं किया
एस्टेलेज

1
त्रुटि वास्तव में अस्पष्ट है यदि आप नोड / एनपीएम के पुराने संस्करण का उपयोग कर रहे हैं, तो मुझे लगा कि मुझे अपग्रेड करना था, इसके बजाय यह केवल एक डाउनलोड विफल रहा
एलेक्स

13

वर्डप्रेस थीम पर काम करते समय, मुझे ELIFECYCLEथोड़ी अलग आउटपुट के साथ एक ही त्रुटि मिली :

npm ईआरआर! डार्विन 14.5.0
npm ईआरआर! argv "/usr/local/Cellar/node/7.6.0/bin/node" "/ usr / स्थानीय / बिन / npm" "इंस्टॉल करें"
npm ईआरआर! नोड v7.6.0
npm ईआरआर! npm v3.7.3
npm ईआरआर! कोड ELIFECYCLE
npm ईआरआर! फ़ाउंडेशनix@1.0.0 पोस्ट-इंस्टॉलेशन: `बोवर इंस्टॉल && gulp build`
npm ईआरआर! स्थिति से बाहर निकलें 1
npm ईआरआर! 
npm ईआरआर! नींव में विफल रहा ।@1.0.0 स्क्रिप्ट की स्थापना रद्द करें 'bower install && gulp build'।
npm ईआरआर! सुनिश्चित करें कि आपके पास नोड.जेएस और एनपीएम का नवीनतम संस्करण स्थापित है।
npm ईआरआर! यदि आप करते हैं, तो यह सबसे अधिक संभावना है कि नींव पैकेज के साथ एक समस्या है,
npm ईआरआर! npm के साथ ही नहीं।
npm ईआरआर! लेखक को बताएं कि यह आपके सिस्टम पर विफल है:
npm ईआरआर! bower स्थापित && gulp बिल्ड

npm installउसी परिणाम के साथ एक बार और प्रयास करने के बाद , मैंने कोशिश की bower install। जब मैं सफल हुआ तो मैंने कोशिश की gulp buildऔर वह भी काम किया।

अभी सब कुछ ठीक चल रहा है। पता नहीं क्यों प्रत्येक कमांड को अलग-अलग चलाने पर &&विफल होने पर काम किया जाता है, लेकिन शायद किसी और को यह उत्तर उपयोगी लगेगा।


@ मैथ्यू पढ़ें - आपने उस कोड ब्लॉक का सुधार कैसे किया? यह एक निश्चित सुधार है, लेकिन मुझे यकीन नहीं है कि यह खुद कैसे करना है ... मुझे लगता है कि मैं एक नई लाइन के लिए 3 बैक टिक्स, हिट 'एन्टर' का उपयोग करता था, फिर मेरा कोड (इसके बाद 'एन्टर' और 3 बैक टिक होता है। कोड ब्लॉक को बंद करना), लेकिन वह अब मेरे लिए काम नहीं करता है। संकेत दिए गए?
adam-asdf

यदि आप मेरे नाम के ऊपर "एक्स एक्स / घंटे पहले संपादित करें" पर क्लिक करते हैं, तो "स्रोत" पर क्लिक करें, यह आपको दिखाएगा! बस एक preformatted पाठ टैग। दूसरा विकल्प प्रत्येक पंक्ति को 4 स्थानों से इंडेंट करने का होता। स्टैक ओवरफ्लो GitHub / Slack / etc जैसे ट्रिपल-बैकटिक सिंटैक्स का समर्थन नहीं करता है। - आपकी फॉर्मेटिंग की व्याख्या तीन लगातार एकल-पीछे वाले ब्लॉकों के रूप में की जा रही है, पहली और आखिरी पूरी तरह से खाली होने के कारण (जिसके कारण पहली पंक्ति को बहुत कम संकेत दिया गया था और अंतिम पंक्ति में अंत में एक छोटा सा हाइलाइट किया गया स्थान था) ।
मैथ्यू पढ़ें

मेरे मामले में, मैं भागना भूल गया npm install(मैं नोड के लिए नया हूं। जेएस)। आपके उत्तर ने मुझे सही दिशा में अग्रसर किया। धन्यवाद।
कोन

13

मेरे मामले में, यह कम रैम मेमोरी के कारण था, जब एक फोटो कम्प्रेशन लाइब्रेरी बड़ी तस्वीरों को प्रोसेस करने में असमर्थ थी।


1
मुझे वही समस्या मिली, यह स्मृति की कमी के कारण है।
Envil

2
वही! ऐसा लगता है कि ELIFECYCLE इरनो 137 के कारण मेमोरी से बाहर भी चला जा सकता है। मेरे मामले में मेरे सर्वर में 1 जीबी रैम था। इसे 2Gb पर अपग्रेड किया और मेरा बिल्ड पास हुआ।
फ़िरोज़ 12

1
मैं npm run watchडॉकर के नीचे भाग गया और प्रश्न से त्रुटि मिली। जब मैंने मेमोरी और CPU की सीमाएं बढ़ा दीं, तो समस्या चली गई है।
पॉल बैसेंको

5

यदि आप यहां आए जैसे मैंने किया, तो रिएक्ट गेटिंग स्टार्ट गाइड की कोशिश करते समय एक समान त्रुटि प्राप्त करने के बाद , आप यह जानना चाह सकते हैं कि वॉचमैन स्थापित नहीं होने के कारण समस्या हो सकती है। इसे यहां डाउनलोड करें, या इसे Homebrew के साथ इंस्टॉल करें brew install watchmanऔर फिर से प्रयास करें: https://facebook.github.io/watchman/docs/install.html

पुनश्च: आप एक brew updateपहले करना चाहते हो सकता है ।


धन्यवाद ... किसी और की प्रतिक्रिया का निर्माण करने का तरीका जानने की कोशिश कर रहा हूँ। इतने सारे गलत तरीके से सेटअप किए गए कदम!
ड्रोनज

1
@Dronz हाँ, जाहिरा तौर पर .. पता नहीं क्यों।
मैग्ने

1
@ ड्रोन को यकीन नहीं है। मुझे अपने मैक पर इसकी जरूरत थी।
मैग्ने

1
धन्यवाद। ऐसा लगता है कि विंडोज पर इसकी जरूरत नहीं है।
ड्रोनज़

1
मैं विकास टीम के साथ लेने के लिए वर्डप्रेस में एक पूर्व-निर्मित टेम्पलेट को कॉन्फ़िगर कर रहा था, एक ही त्रुटि मिली और लाइन cwd: parseInt(process.versions.node) < 8 ? process.cwd : process.cwd()को बदलकर त्रुटि को दबा दिया गया लेकिन एक और एक उत्पन्न brew updateकिया ... मेरे लिए काम किया।
शिमनी

4

वेबपैक निर्माण को चलाते समय मुझे इसी तरह की त्रुटि हो रही थी क्योंकि नोड async awaitपुराने संस्करणों पर कीवर्ड को नहीं समझता है । मैंने वेबपैक बाबेल-प्लगइन-ट्रांसफॉर्मेशन-एसिंक्स-टू-जनरेटर जोड़ा और इसे हल किया गया। यह उन्हें वादों से बदल देता है।


4
process._tickCallback (आंतरिक / प्रक्रिया / next_tick.js: 10 पर
4: 9)
npm ईआरआर! कोड ELIFECYCLE
npm ईआरआर! गलत 1
npm ईआरआर! ng-contact-manager@0.0.0 नमूना: `नोड src / सर्वर / डेटा
एक / बीज db.js`
npm ईआरआर! स्थिति से बाहर निकलें 1
npm ईआरआर!
npm ईआरआर! Ng-contact-manager@0.0.0 नमूना स्क्रिप्ट पर विफल।
npm ईआरआर! यह शायद npm के साथ कोई समस्या नहीं है। वहाँ है
ely अतिरिक्त लॉगिंग आउटपुट ऊपर।

npm ईआरआर! इस रन का एक पूर्ण लॉग इन में पाया जा सकता है:

मेरा यहाँ एक ही मुद्दा है कि मैं आखिर कैसे हल हो गया! त्रुटि: टर्मिनल से मेरी त्रुटि जब मैं npm run sample अपने डेटाबेस कनेक्शन उपयोगकर्ता नाम और पासवर्ड को सुधारने के बाद चलाता हूं, तो मैं अपने डेटाबेस के लिए और फ़ाइल के तहत एमएलएबी का उपयोग कर रहा था। मैं उपयोगकर्ता नाम और पासवर्ड को ठीक से रखना भूल जाता हूं। जब मैं सही करता हूं कि मैं काम करता हूं।

> ng-contact-manager@0.0.0 सैंपल / यूजर्स/mohammedr.kemal/Downl
oads / Ex_Files_ANGULAR_API_AUTH / व्यायाम फ़ाइलें / Ch01 / 01_04 / प्रारंभ
> नोड src / server / data / seed-db.js

मंगोल से जुड़े ...
मंगोल से जुड़े ...
2 रिकॉर्ड डाले गए।
कनेक्शन बंद कर रहा है ...
किया हुआ।
12 रिकॉर्ड डाले गए।
कनेक्शन बंद कर रहा है ...
किया हुआ।

इसलिए हमारे पास हमारे कोड में किए गए किसी भी डेटा कनेक्शन को देखना अच्छा होगा।


3

नए पैकेज स्थापित करने या उन्हें अपडेट करने के बाद मुझे वही त्रुटि मिली:

...
npm ERR! code ELIFECYCLE
npm ERR! errno 1
...

इसने मुझे एक या दो बार इंस्टॉलेशन कमांड चलाने में मदद की। उसके बाद, त्रुटि गायब हो गई।


2

मेरे पास यह मुद्दा था जब मैं दो प्रोजेक्ट चला रहा था जिसमें एक ही सेट अप था और मेरे पास पहले से ही एक रनिंग थी। इसका मतलब यह था कि दूसरी परियोजना उस पोर्ट नंबर का उपयोग नहीं कर सकती थी। जैसे ही मैंने चल रहे दूसरे प्रोजेक्ट को रोका मुझे कोई समस्या नहीं थी।


1

मेरे मामले में यह लिखने के बजाय लिनक्स के साथ अनुमति की समस्या थी:

npm run start

मैंने कोशिश की:

sudo npm run start

फिर अपना sudo यूजर पासवर्ड डालें और आप जाने के लिए तैयार हैं!


1

विंडोज समाधान लिनक्स सूडो उत्तर के समान है। व्यवस्थापक के रूप में npm प्रारंभ (या जो भी) चलाएँ। मैंने अपनी परियोजना में एक नया मॉड्यूल जोड़ा था। कुछ मशीनों पर काम किया गया लेकिन दूसरों पर जो कि अधिक बंद थीं, इतना नहीं। यह पता लगाने में थोड़ा समय लगा लेकिन नए मॉड्यूल को "कुछ" तक पहुंच की आवश्यकता थी जो कि प्रशासक की अनुमति के बिना उपलब्ध नहीं था।


0

मेरे पास एक ही त्रुटि कोड था जब मैं नोड डूकर कंटेनर के अंदर एनपीएम रन बिल्ड बना रहा था ।

स्थानीय रूप से यह तब काम कर रहा था जब कंटेनर के अंदर मैंने त्रुटि को फेंकने का विकल्प निर्धारित किया था जब संकलन के दौरान एक चेतावनी होती है जबकि स्थानीय रूप से इसे सेट नहीं किया गया था। तो यह त्रुटि कुछ भी हो सकती है जो एनपीएम द्वारा की जा रही प्रक्रिया को रोकने से जुड़ी है


0

मेरे मामले में जब मैंने किसी अन्य निर्देशिका से प्रोजेक्ट की प्रतिलिपि बनाई तो मैंने एक समान त्रुटि उत्पन्न की। कुछ छिपी हुई फाइलें, जैसे कि .babelrc, गायब थीं। तो आह ... सुनिश्चित करें कि आप सभी फ़ाइलों की प्रतिलिपि बनाएँ! :)


0

यह समस्या तब भी हो सकती है जब आप git से कोड खींचते हैं और अभी तक स्थापित नोड मॉड्यूल "npm इंस्टॉल" नहीं करते हैं।


0

मेरे लिए यह एक तीखा बयान था:

यह इस लाइन के बारे में विशेष रूप से, अर्धविराम के बारे में शिकायत कर रहा था:

let num_coin = val.num_coin ? val.num_coin || 2;

मैंने इसे बदल दिया:

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