ฉันสร้างโครงการ Rails ใหม่โดยใช้rails 3.1.0.rc4
บนเครื่องของฉัน แต่เมื่อฉันพยายามเริ่มต้นเซิร์ฟเวอร์ฉันจะได้รับ: ไม่พบ JavaScript runtime ดูที่นี่สำหรับรายการของ runtimes ที่มีอยู่ ( ExecJS::RuntimeUnavailable
)
หมายเหตุ: นี่ไม่เกี่ยวกับ Heroku
ฉันสร้างโครงการ Rails ใหม่โดยใช้rails 3.1.0.rc4
บนเครื่องของฉัน แต่เมื่อฉันพยายามเริ่มต้นเซิร์ฟเวอร์ฉันจะได้รับ: ไม่พบ JavaScript runtime ดูที่นี่สำหรับรายการของ runtimes ที่มีอยู่ ( ExecJS::RuntimeUnavailable
)
หมายเหตุ: นี่ไม่เกี่ยวกับ Heroku
คำตอบ:
หากต้องการติดตั้ง nodejs บน ubuntu คุณสามารถพิมพ์คำสั่งต่อไปนี้ในเทอร์มินัล:
sudo apt-get install nodejs
หากต้องการติดตั้ง nodejs บนระบบที่ใช้ yum ให้พิมพ์ดังต่อไปนี้ในเทอร์มินัล:
yum -y install nodejs
sudo apt-get install nodejs
.
หมายเหตุจาก Michael 12/28/2011 - ฉันเปลี่ยนการยอมรับของฉันจาก (rubytheracer) เป็นด้านบน (nodejs) เนื่องจาก therubyracer มีปัญหาขนาดรหัส Heroku ตอนนี้ขอท้อมัน มันจะ 'ทำงาน' แต่อาจมีปัญหาเรื่องขนาด / ประสิทธิภาพ
หากคุณเพิ่มรันไทม์เช่น therubyracer ใน Gemfile ของคุณและรันบันเดิลจากนั้นลองและเริ่มต้นเซิร์ฟเวอร์มันควรจะทำงาน
gem 'therubyracer'
จำเป็นต้องใช้ runtime javascript สำหรับการรวบรวม coffeescript และสำหรับ uglifier
Update, 12/12/2011:บางคนพบปัญหากับ rubytheracer (ฉันคิดว่ามันเป็นขนาดรหัสส่วนใหญ่) พวกเขาพบว่า execjs (หรือ nodejs) ทำงานได้ดีเช่นกัน (ถ้าไม่ดีขึ้น) และเล็กกว่ามาก
nb Coffeescript กลายเป็นมาตรฐานสำหรับ 3.1+
rake assets:precompile
และเพิ่มสินทรัพย์ลงในที่เก็บของคุณ Rails 3.1 ไม่จำเป็นต้องใช้งาน JavaScript ในการผลิตจริงในขณะที่วางจำหน่าย
group :development do gem 'therubyracer' end
เพิ่มอัญมณีต่อไปนี้ในไฟล์อัญมณีของคุณ
gem 'therubyracer'
gem 'execjs'
และเรียกใช้
bundle install
หรือ
ติดตั้ง Node.jsเพื่อแก้ไขอย่างถาวรสำหรับทุกโครงการ
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
หวังว่านี่จะช่วยคนที่มีปัญหาเช่นเดียวกับฉัน
sudo apt-get install software-properties-common
หากวิธีนี้ไม่สามารถแก้ปัญหาได้คุณสามารถติดตั้งได้ด้วยตนเอง: blog.anantshri.info/howto-add-ppa-in-debian
บนแพลตฟอร์ม windows ฉันพบปัญหาเช่นกันโซลูชันสำหรับฉันก็แค่เพิ่ม
C:\Windows\System32
ไปที่ PATH
และรีสตาร์ทคอมพิวเตอร์
ฉันมีปัญหานี้กับเครื่อง Windows และการติดตั้ง node.js เป็นวิธีแก้ปัญหาที่ใช้งานได้ในที่สุด สิ่งนี้เกิดขึ้นหลังจากลองเส้นทางอื่น ๆหลายเส้นทางรวมถึงการพยายามทำให้ 'therubyracer' ทำงาน แม้ว่า github สำหรับ node.js แสดงให้เห็นว่าการติดตั้งบน windows ยังคงไม่เสถียรเว็บไซต์ที่http://nodejs.org/มีตัวติดตั้ง Windows ซึ่งทำงานได้อย่างสมบูรณ์
หากคุณติดตั้ง nodejs จากซอร์สแล้วและ execjs ไม่รู้จักคุณอาจต้องการลองใช้เคล็ดลับนี้: https://coderwall.com/p/hyjdlw
บน CentOS 6.5 สิ่งต่อไปนี้ใช้ได้สำหรับฉัน:
sudo yum install -y nodejs
ข้อผิดพลาดเกิดจากการไม่มีจาวาสคริปต์รันไทม์บนเครื่องของคุณ ในการแก้ไขปัญหานี้คุณจะต้องติดตั้ง NodeJS
คุณสามารถติดตั้ง NodeJS ผ่าน Node Version Manager หรือnvm :
ก่อนติดตั้งnvm
:
$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.0/install.sh | bash
ติดตั้งโหนดผ่านnvm
:
nvm install 5.9.1
สิ่งนี้จะติดตั้งเวอร์ชั่น5.9.1
ของ Node
ฉันพบปัญหานี้โดยใช้ Phusion Passenger (ทำงานเป็นโมดูล nginx) บนเซิร์ฟเวอร์ Redhat เราได้ติดตั้งรันไทม์ Javascript แล้ว แอพ Rails อื่นในไดเรกทอรีหลักเดียวกันนั้นใช้งานได้ดี
ปรากฎว่าเรามีปัญหาสิทธิ์ เรียกใช้ "ls -l" และดูว่าโฟลเดอร์นั้นมีเจ้าของและกลุ่มเดียวกันกับแอปที่ใช้งานอื่น ๆ ในระบบหรือไม่ ฉันต้องเรียกใช้ chown และ chgrp ในโฟลเดอร์ (ด้วยสวิตช์แบบเรียกซ้ำ) เพื่อแก้ไข
ฉันหวังว่าคุณจะได้ติดตั้ง nodejs || ไว้ล่วงหน้า NMV
โซลูชันของฉันไม่ต้องการการตั้งค่า gem หรือติดตั้ง 'node ด้วยsudo apt
"เมื่อคุณมี nvm แล้ว
สิ่งที่คุณต้องทำก็คือแก้ไข DesctopEntry of RubyMine เพราะเราจะมีขั้นตอนเล็ก ๆ เหล่านั้น:
usr/share/applications
vim RubyMine
/bin/bash -i -c
เพิ่มเริ่มต้น ดังนั้นสายของคุณควรมีลักษณะเช่นนี้
Exec=/bin/bash -i -c "/home/USERNAME/rubymine/RubyMine-2019.1.2/bin/rubymine.sh" %f
ประโยชน์ของตัวแปรสภาพแวดล้อมทั้งหมดของคุณพร้อมใช้งานแล้วสำหรับ RubyMine ดังนั้นคุณจะไม่รู้สึกเจ็บปวดกับการเพิ่มเข้ามา