1. ホーム
  2. ruby-on-rails

[解決済み] JRuby on RailsとRuby on Rails、どこが違うの?

2022-06-07 05:55:01

質問

JRubyとJRuby on Railsを試したいと思っています。JRuby on RailsとRuby on Railsは何が違うのか、情報がなくて困っています。

どのような違いに気をつければよいですか?

どのように解決するのですか?

JRubyはJVM上で動作するRubyの実装であるのに対し、MatzのRubyはC言語の実装である。

注目すべき主な機能は以下の通りです。

  1. JRubyはJava VM上で動作し、コンパイルされるか、Javaバイトコードまで解釈されます。
  2. JRubyはJavaのコードと統合することができます。Javaクラスライブラリ(.jar)があれば、RubyのコードからJRubyで参照・利用することができます。逆に、Javaの中からJRubyのコードを呼び出すこともできます。JRubyはJVMやアプリケーションサーバの機能を利用することもできます。
  3. JRubyは通常、SunのGlassFishや、TomcatウェブサーバーのようなJavaアプリケーションサーバー内でホストされます。
  4. JRubyでネイティブのRuby gemsを使用することはできませんが、人気のあるRubyライブラリのほとんどにJRubyの実装があります。

その他にも、JRubyのwikiに記載されているような違いがあります。