Ruby on rails 安装Jruby会更改Ruby和Rails的默认路径

Ruby on rails 安装Jruby会更改Ruby和Rails的默认路径,ruby-on-rails,ruby,Ruby On Rails,Ruby,我是Ruby和Rails新手,一直在关注本网站上的教程: 我安装了Ruby 2.2.1和Rails 4.2.6。我使用rvm安装Ruby,使用gem安装Rails 要启动web服务器,我需要一个Javascript运行时。我选择了therubyrhino。要安装它,我需要首先安装JRuby。我用gem安装了它 $ rvm install jruby 之后,我发现Ruby和Rails的默认路径都更改为: ~/.rvm/gems/jruby-9.0.5.0/bin/rails ~/.rvm/ru

我是Ruby和Rails新手,一直在关注本网站上的教程:

我安装了Ruby 2.2.1和Rails 4.2.6。我使用
rvm
安装Ruby,使用
gem
安装Rails

要启动web服务器,我需要一个Javascript运行时。我选择了therubyrhino。要安装它,我需要首先安装JRuby。我用
gem
安装了它

$ rvm install jruby 
之后,我发现Ruby和Rails的默认路径都更改为:

~/.rvm/gems/jruby-9.0.5.0/bin/rails
~/.rvm/rubies/jruby-9.0.5.0/bin/ruby
这会造成问题,因为我甚至不能跑步

$ ruby -v

我无法启动web服务器

$  bin/rails server
TypeError: no implicit conversion of Regexp into String
   join at org/jruby/RubyArray.java:1760
  <top> at /home/jxw394/rails-projects/blog/bin/spring:11
   load at org/jruby/RubyKernel.java:955
  <top> at bin/rails:3
$bin/rails服务器
TypeError:没有将Regexp隐式转换为字符串
加入org/jruby/RubyArray.java:1760
at/home/jxw394/rails项目/blog/bin/spring:11
加载到org/jruby/RubyKernel.java:955
垃圾箱/轨道处:3
为什么安装JRuby会改变一切?我应该怎么做才能让webapp运行

编辑:对不起,我打错了:应该是“therubyrhino”而不是“therubyracer”。这一点已在上文中得到纠正


编辑:对不起,我打错了:我用rvm而不是gem安装了jruby。这一点已在上文中得到纠正

安装
therubyracer
不需要
jruby
。您只需在
Gemfile

gem 'therubyracer', platforms: :ruby

另一种不涉及rubyracer的方法是安装node.js。

您不能使用
gem安装jruby
,因为没有这样的gem,并且jruby不能作为gem安装。按照文档中的安装说明进行操作:对不起,这是另一个打字错误。我用rvm安装jruby。对不起,我打错了:它应该是“therubyrhino”而不是“therubyracer”。“rubyrhino”没有出现在Gemfile中。最终,我删除了ruby、jruby和rails。从其网站重新安装rvm,并使用rvm命令重新安装ruby、jruby和rails。我没有使用therubyrhino,因为它没有出现在GEM文件中。我只需取消对包含rubyrace的行的注释,运行bundle安装,然后就可以启动服务器了。我检查你的答案,因为它看起来是正确的。你需要注意的是jruby是ruby的替代品。您可以使用jruby或ruby。如果您正在使用jruby,您可能需要使用therubyrhino而不是therubyracer
gem 'therubyracer', platforms: :ruby