रेल - एक जावास्क्रिप्ट रनटाइम नहीं मिल सका?


247

मैंने rails 3.1.0.rc4अपनी स्थानीय मशीन का उपयोग करके एक नई रेल परियोजना का निर्माण किया, लेकिन जब मैं सर्वर को शुरू करने की कोशिश करता हूं तो मुझे एक जावास्क्रिप्ट रनटाइम नहीं मिल पाता। उपलब्ध रनटाइम की सूची के लिए यहां देखें । ( ExecJS::RuntimeUnavailable)

नोट: यह हरोकू के बारे में नहीं है।


जवाबों:


475

एक जावास्क्रिप्ट रनटाइम लाइब्रेरी स्थापित करना जैसे नोडजेस इसे हल करता है

Ubuntu पर नोडज स्थापित करने के लिए, आप टर्मिनल में निम्न कमांड टाइप कर सकते हैं:

sudo apt-get install nodejs

यम का उपयोग कर सिस्टम पर नोडज स्थापित करने के लिए, टर्मिनल में निम्नलिखित टाइप करें:

yum -y install nodejs

14
मेरे लिए भी। sudo apt-get install nodejs
हर्ट्जेल गिनीज

1
अब मैं इसे लेने के लिए मार्ग के रूप में सुझाता हूं। ऊपर देखो।
माइकल डुरंट

1
उबंटू सॉफ्टवेयर सेंटर के माध्यम से नोड स्थापित करने के बारे में उत्तर में हटाए गए नोट के रूप में यह वहाँ नहीं था (उबंटू 12.04)
माइकल डुरंट

1
उबंटू 64 थेरैबरर स्थापित करने के लिए एक बड़ी परेशानी दे रहा है, पिछले संस्करण भी नहीं, 0.11.1, जिसने हल किया। इस जवाब ने उस पर मेरी मदद की।
एडुआर्डो

@gwho यांग द्वारा नीचे एक जवाब है। उस पर एक नजर।
द टक्सरेज़र

44

माइकल 12/28/2011 से नोट - मैंने इस (रूबाइटर) से अपनी स्वीकार्यता को बदल दिया है (उपर्युक्त) नोड्यूसर के रूप में कोड आकार के मुद्दे हैं। हेरोकू अब इसे दृढ़ता से हतोत्साहित करता है । यह 'काम' करेगा लेकिन इसमें आकार / प्रदर्शन के मुद्दे हो सकते हैं।

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

gem 'therubyracer'

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

अद्यतन, 12/12/2011: कुछ लोगों को रूबाइथर के साथ समस्या मिली (मुझे लगता है कि यह ज्यादातर कोड आकार था)। उन्होंने पाया कि एग्जॉस्ट (या नोडज) ने भी काम किया है (यदि बेहतर नहीं है) और बहुत छोटे थे।

nb Coffeescript 3.1+ के लिए एक मानक बन गया


3
इसका उपयोग UglifyJS के साथ जावास्क्रिप्ट को संपीड़ित करने के लिए भी किया जाता है। ध्यान दें कि इन कार्यों को करने का अनुशंसित तरीका उन्हें विकास के साथ करना है rake assets:precompileऔर फिर अपने भंडार में संपत्ति जोड़ना है; रेल 3.1 को रिलीज के समय उत्पादन में जावास्क्रिप्ट रनटाइम की आवश्यकता नहीं होगी।
सफ़ेद रंग की

1
मैंने इसे उत्तर के रूप में चिह्नित किया है। यह थोड़ा बालों वाला था क्योंकि यह इसे ठीक नहीं करता था और मैं 3.0.9 और 3.0.4 के साथ नए ऐप भी आज़मा रहा था, लेकिन उनके साथ (अलग) त्रुटियां हो गईं। अंत में मैंने फिर से एक नया ऐप किया - और इसके साथ रेल आरसी 5 भी प्राप्त किया और रूबाइथर को जोड़ा और एक बंडल्ड अपडेट किया और अंत में मैं सर्वर को ऊपर और चला सकता हूं। धन्यवाद गज़ियर!
माइकल डुरंट

1
btw मानक रेल ऐप जो बन जाता है वह क्रॉलर का उपयोग करता है जिसके लिए मुझे इसकी आवश्यकता होती है।
माइकल डुरंट

1
मुझे लगता है कि एक अच्छा अभ्यास इसे विकास समूह के तहत जेमफाइल में डाल सकता है, कुछ इस तरह से group :development do gem 'therubyracer' end
ईव्यूंस

@eveevans रनटाइम को त्रुटि नहीं मिल सकती है। परिसंपत्ति उत्पादन वातावरण में संकलित की जाती है, इसलिए उपचारकर्ता को उत्पादन एनवी ब्लॉक के तहत होना चाहिए।
लुललाला

27

अपनी रत्न फ़ाइल में निम्नलिखित रत्न जोड़ें

gem 'therubyracer'
gem 'execjs'

और भाग खड़ा हुआ

bundle install

या

सभी परियोजनाओं के लिए इसे स्थायी रूप से ठीक करने के लिए Node.js स्थापित करें


1
यह मेरे लिए (लिनक्स मिंट 16) काम करता था, मुझे लगता है कि रेल के नवीनतम संस्करण में या तो कुछ निर्भरताएं छूट जाती हैं।
जेमिनीकोडर

15

sudo apt-get install nodejsमेरे लिए काम नहीं करता है। इसे काम पर लाने के लिए, मुझे निम्नलिखित कार्य करने होंगे:

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs

आशा है कि यह किसी को मेरी जैसी ही समस्या होने में मदद करेगा।


मेरे लिए ऐड-ऑप्ट-रिपॉजिटरी ppa का काम: chris-lea / node.js
jagganz18

@ jpganz18 पहले यह प्रयास करें: sudo apt-get install software-properties-common यदि यह समस्या हल नहीं करता है, तो आप इसे मैन्युअल रूप से स्थापित कर सकते हैं: blog.anantshri.info/howto-add-ppa-in-debian
Robin

6

खिड़कियों के मंच पर, मैं उस समस्या से भी मिला, मेरे लिए समाधान सिर्फ जोड़ना है

C:\Windows\System32

करने के लिए पथ

और कंप्यूटर को पुनरारंभ करें।


3

मेरे पास विंडोज मशीन पर यह मुद्दा था और नोड स्थापित करना था। जेएस समाधान था जो आखिरकार मेरे लिए काम करता था। यह कई अन्य मार्गों की कोशिश करने के बाद आया, जिसमें 'थेरैबरर' काम करने की कोशिश करना शामिल था। हालाँकि नोड.जेएस के लिए जीथब सुझाव देता है कि खिड़कियों पर स्थापना अभी भी अस्थिर है, वेबसाइट http://nodejs.org/ पर एक विंडोज इंस्टॉलर था जो पूरी तरह से काम करता था।


1

यदि आप पहले से ही उदाहरण के लिए स्रोत से नोडज स्थापित करते हैं, और एग्जॉस्ट यह पहचान नहीं रहा है कि आप इस टिप को आज़माना चाहते हैं: https://coderwall.com/p/hyjdlw


1

यदि सब विफल रहता है तो आप कोशिश कर सकते हैं

# एप्टीट्यूड नोडज स्थापित करते हैं

जड़ के रूप में। आप निम्न आदेश के साथ अपने स्थापित परीक्षण कर सकते हैं:

# नोड -v

यदि आप एनपीएम को स्थापित करना चाहते हैं, तो कृपया निम्नलिखित देखें लिंक । आशा करता हूँ की ये काम करेगा।



0

एक जावास्क्रिप्ट रनटाइम स्थापित करें

त्रुटि आपके स्थानीय मशीन पर जावास्क्रिप्ट रनटाइम की अनुपस्थिति के कारण होती है। इसे हल करने के लिए, आपको NodeJS इंस्टॉल करना होगा।

आप नोड संस्करण प्रबंधक या एनवीएम के माध्यम से एनओडीजेएस स्थापित कर सकते हैं :

सबसे पहले, स्थापित करें nvm:

$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh | bash

के माध्यम से नोड स्थापित करें nvm:

nvm install 5.9.1

यह 5.9.1नोड का संस्करण स्थापित करेगा ।


0

मैं एक Redhat सर्वर पर फ़्यूज़न पैसेंजर (एक नेगनेक्स मॉड्यूल के रूप में चल रहा है) का उपयोग करके इस मुद्दे पर भाग गया। हमारे पास पहले से ही एक जावास्क्रिप्ट रनटाइम स्थापित था। एक ही मूल निर्देशिका में अन्य रेल क्षुधा ठीक काम किया।

यह पता चला कि हमारे पास एक अनुमति मुद्दा था। "Ls -l" चलाएं और देखें कि क्या फ़ोल्डर में सिस्टम पर अन्य कार्यशील ऐप्स के समान स्वामी और समूह हैं। मुझे इसे ठीक करने के लिए फ़ोल्डर (पुनरावर्ती स्विच के साथ) पर chown और chgrp चलाना पड़ा।


0

मुझे आशा है कि आपके पास पहले से स्थापित नोडज हैं || nmv।

जब आप पहले से ही एनवीएम रखते हैं तो मेरे समाधान के लिए मणि सेटअप या sudo apt" नोड के साथ " स्थापित करने की आवश्यकता नहीं है

आप सभी की जरूरत है RubyMine के DesctopEntry को संपादित करने के लिए। उसके लिए हमारे पास छोटे कदम होंगे:

  1. के लिए जाओ usr/share/applications
  2. किसी भी संपादक में खोलें (मैं vim का उपयोग करता हूं) Rubymine DesktopEntryvim RubyMine
  3. पंक्ति 6 ​​को संपादित करें (Exec से शुरू होता है)। आप शुरुआत करने के लिए जोड़ें /bin/bash -i -c। तो आपकी लाइन इस तरह दिखनी चाहिए Exec=/bin/bash -i -c "/home/USERNAME/rubymine/RubyMine-2019.1.2/bin/rubymine.sh" %f
  4. किया हुआ! आप गौरवशाली हैं!

लाभ के रूप में आपके सभी पर्यावरण चर अब रूबीमाइन के लिए उपलब्ध हैं। तो आप उन्हें जोड़ने के साथ कोई दर्द महसूस करते हैं।

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