スクリプト言語用の Java API (JSR223) は Java 1.6 に標準で付属しており、ここから Java 1.5 用に個別にダウンロードできます。
私の質問は次のとおりです。1.5 で個別のダウンロードを使用する場合と 1.6 でネイティブ サポートを使用する場合に注意すべき制限や相違点はありますか?
私は以前に同じ質問に直面していました。
違いの 1 つは、スクリプト エンジンの品質かもしれません。jruby-userリストで得た応答は次のとおりです。
その理由の 1 つは、現在 Java5 で動作する JRuby エンジンが公式リリースではないことだと思います。ユーザーの便宜のためにアーカイブを置いています。 http://old.nabble.com/Call-for-discussion-about-embed-API-tp24528478p24981076.html :
また:
また、Java5+JSR223+Jruby でいくつかのクラス バージョンの問題が報告されていることも知っていますが、私にとっては問題なく動作します。http://old.nabble.com/Call-for-discussion-about-embed-API-tp24528478p25181920.html
これらは実際にJDK5でコンパイルされたScriptEngineに関連していると思います。http://kenai.com/projects/jruby/pages/JavaIntegration#Java_6_(using_JSR_223:_Scripting )を参照してください。
とは言っても、Java5 と JRuby では、これらの問題やその他の実際の問題に実際に遭遇したことはありません - java.scripting API 自体の制限を除けば、Java6 でも同じだと思います。(上記のスレッドも参照してください)。
したがって、Java6 の利点 (厳密には JSR223 の観点から) は、サポートとパフォーマンスの向上にあると思います。
一方で、OSGI を使用した Java 6 でクラス ローディングの問題に遭遇しました。JRE に組み込まれている検出メカニズムが、バンドル内にある ScriptEngine を検出できるように、追加の調整が必要だと思います。 )