2015-12-22 19 views
40

मैंने बेबेल-क्ली उपकरण स्थापित किया है जैसा कि बेबेल 'getting started' पृष्ठ द्वारा समझाया गया है।बेबेल कमांड नहीं मिला

अपने प्रोजेक्ट फ़ोल्डर के अंदर एक टर्मिनल से:

npm install --save-dev babel-cli 

इस के बाद, वहाँ एक कोलाहल-CLI फ़ोल्डर में किसी node_modules निर्देशिका है, लेकिन वहां बनाए गए कोई package.json है।

babel src -d lib 
-bash: babel: command not found 

मैं स्थापित NodeJS/NPM का नवीनतम संस्करण है:

npm WARN enoent ENOENT: no such file or directory, open '/Users/MyName/Sites/Tutorials/Babel2/package.json 

जब कोलाहल भागने की कोशिश कर, मैं इस मिल: NPM भी निम्न त्रुटि दर्शाता है। मैं NPM अद्यतन जी चलने के बाद, और मैं अपने .bash_profile फ़ाइल संपादित किया है शामिल करने के लिए:

export PATH=$PATH:/Users/MyName/npm/bin 
export PATH=/usr/local/share/npm/bin:$PATH 

मैं ऐसे browserify के रूप में अन्य NPM उपकरणों के साथ इस अनुभव नहीं किया है। बेबेल क्यों पहचाना नहीं जाता है?

+1

देख रहा था आप देख सकते हैं के साथ कोलाहल-CLI यहाँ कैसे शुरुआत की जाए: http://stackoverflow.com/questions/34483748/running-babel-cli -from-npm-script-not-working/34484065 –

+0

यदि आप मछली का उपयोग कर रहे हैं, तो https://github.com/oh-my-fish/plugin-node-binpath – onmyway133

उत्तर

57

यहां दो समस्याएं हैं। सबसे पहले, आपको package.json फ़ाइल की आवश्यकता है। बिना किसी इंस्टॉल करने के लिए एनपीएम को npm WARN enoent ENOENT: no such file or directory त्रुटि फेंक देगा। अपनी प्रोजेक्ट निर्देशिका में, प्रोजेक्ट के लिए package.json फ़ाइल जेनरेट करने के लिए npm init चलाएं।

दूसरा, स्थानीय बाइनरी शायद नहीं मिला क्योंकि स्थानीय ./node_modules/.bin$PATH में नहीं है। How to use package installed locally in node_modules? में कुछ समाधान हैं, लेकिन अपने बैबेल-क्ली कमांड को एनपीएम स्क्रिप्ट में लपेटना आसान हो सकता है। यह काम करता है क्योंकि npm runnpm bin (node_modules/.bin) के आउटपुट को PATH पर स्क्रिप्ट के लिए प्रदान करता है।

{ 
    "scripts": { 
    "babel-version": "babel --version" 
    }, 
    "devDependencies": { 
    "babel-cli": "^6.6.5" 
    } 
} 

कॉल इस आदेश के साथ स्क्रिप्ट: npm run babel-version

यहाँ एक छीन नीचे उदाहरण package.json जो स्थानीय स्तर पर स्थापित कोलाहल-CLI संस्करण रिटर्न है।

पैकेज.जेसन में स्क्रिप्ट डालना काफी उपयोगी है लेकिन अक्सर अनदेखा किया जाता है। दस्तावेज़ों में बहुत अधिक: How npm handles the "scripts" field

+2

अन्य उत्तरों पर विचार करने के बाद, और यह सुनिश्चित करने के लिए कि मैं स्थानीय 'node_modules' में संकुल को कॉल कर सकता हूं, मेरी '~/.profile' फ़ाइल के साथ गड़बड़ कर रहा हूं, मैंने निष्कर्ष निकाला है कि 'package.json'' के' स्क्रिप्ट्स 'क्षेत्र का निष्कर्ष निकाला गया है सर्वोत्तम विकल्प। आपको अपने सहकर्मियों को अपनी प्रोफाइल बदलने या उपनाम बनाने की आवश्यकता नहीं होगी, आपकी स्क्रिप्ट बस काम करेगी। –

9

यह सामान्य समस्या है और यह आपकी रूट निर्देशिका से .cmd फ़ाइल की तलाश में है जहां आपने babel-cli स्थापित किया था। नीचे आदेश का प्रयास करें।

./node_modules/.bin/babel.cmd

एक बार जब आप कमांड प्रॉम्प्ट में अपना स्रोत कोड देख पाएंगे। आपका अगला चरण एक और एनपीएम मॉड्यूल babel-preset-es2015 स्थापित करना है।

babel-preset-es2015 इंस्टॉल करने के लिए नीचे दिए गए उत्तर का पालन करें और देखें कि बेबेल को इसकी आवश्यकता क्यों है।

babel-file-is-copied-without-being-transformed

+8

यह आदेश शायद './node_modules होना चाहिए/.bin/babel'। – joemaller

5

यही वह है जो मैंने अपने स्थानीय प्रोजेक्ट node_modules/.binPATH पर स्वचालित रूप से जोड़ने के लिए किया है।~/.profile में मैं कहा:

if [ -d "$PWD/node_modules/.bin" ]; then 
    PATH="$PWD/node_modules/.bin" 
fi 

फिर अपने बैश प्रोफ़ाइल को फिर से लोड: source ~/.profile

1

आप नीचे दिए गए

"./node_modules/.bin/ के रूप में अपने कोलाहल फ़ाइल का पथ-पीछे उद्धरण चिह्न जोड़ने की आवश्यकता होगी बेबेल "--help

3

मुझे एक ही समस्या थी। nodemodules फ़ोल्डर हटा दिया गया और व्यवस्थापक के रूप में कमांड प्रॉम्प्ट खोला गया और फिर npm install चला गया।

सभी संकुल ठीक स्थापित किए गए।

5

जब मैं इस सवाल का पाया, मैं के लिए

$ npm install -g babel-cli 
+0

आपको कभी भी एनपीएम के साथ सुडो का उपयोग नहीं करना चाहिए। अपने नोड संस्करणों को प्रबंधित करने के लिए एनवीएम का उपयोग करने का प्रयास करें। –

+1

'' npm install -g babel-cli'' sudo के बिना काम करेगा। –

संबंधित मुद्दे