問題タブ [jruby]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
groovy - JythonやJrubyに対するGroovyの利点は?
JythonまたはJrubyを使用できるのに、なぜGroovyを使用することを選択するのですか?この言語は、JythonとJrubyのスキルがJVMの外部の親言語に適用できるという事実を補うための固有の利点を提供しますか?
私は意図的にこの質問を一般的なものにしていますが、特定のドメインに存在する利点がある場合は、遠慮なく説明してください。
編集
明確にするために、Jrubyでコードを記述した場合、必要に応じてそのコードをJVMの外部に移動できるようになりました。少なくとも、Rubyについての理解が深まりました。一方、Groovyスキルは、JVM内に存在する言語を使用する場合にのみ適用できます。JythonとJrubyにはこれが組み込まれている利点がありますが、Groovyはこの欠点を何で補う必要がありますか?
Groovyにあなたが見つけた利点がなく、JythonまたはJrubyを使用することを提案する場合は、私に知らせてください。
編集2
すべての回答に感謝します。ほとんどの回答が同じです。GroovyはJavaとの統合がわずかに優れており、JythonやJrubyよりも優れています。
Netbeans 6.5をIDEとして使用してフォローアップ
するGroovyは、JrubyよりもJavaプロジェクトとの統合が優れていることがわかりました。統合の欠如がJrubyまたはNetbeansの失敗であるかどうかはわかりません。しかし、少しの間それを使用した後、Groovyは間違いなく足を上げているようです。
java - JRuby と Java オブジェクト
以下のことが可能かどうか教えてください。
- Java で特定のクラスのインスタンスを作成する
- それをJRubyに渡して何かをする
- Java で「変更された」バージョンを使い続ける
小さな実用的な例を提供できますか?
編集:埋め込みがこれを達成する最も簡単な方法であることがわかりました。詳細については、JRuby の埋め込みを参照してください。
ruby-on-rails - Rails スキーマ作成の問題
Jruby と rails 2.2.2 を使用しています。私の問題は、データベース スキーマに正しく書き込まれていない移行があることです。
ここに私の移行があります:
これが schema.rb で生成されるものです
2 つの質問があります。
'ENGINE=MyISAM'
スキーマに入るにはどうすればよいですか?- execute ステートメントが になったのはなぜ
add_index "notes", ["title", "body"], :name => "title"
ですか? また、移行を実行ステートメントとして強制的に残すにはどうすればよいですか?
答えてくれたChristian Lescuyerに感謝します。しかし、これを試しても何も変わりませんでした。config.active_record... 行のコメントを外しましたが、スキーマは変更されていません。これを jruby と ruby 1.8.6 で rails 2.2.2 と edge rails で試しましたが、スキーマに変更はありません。誰が私が間違っているのか教えてもらえますか?
java - Rails と .NET 3.5 の Java/JRuby... やり方が間違っているように感じる
Metro/Hibernate を使用して Java で Web サービス (SOAP to C++ クライアント) を開発し、JRuby on Rails で記述された Web サイトを前面に出し、JRuby を介して、一般的にはデータベースを介して Java モジュールを接続することを計画しています。私はすでにいくつかのコードを書き、すべてをセットアップしました。
さて、.NET 3.5 は非常に強力であると聞いたので、いくつか読んだ後、それが真実であることを認めました。しかし、Java と RoR のこの巨大でありながら奇妙なハイブリッドを破棄して、すべてを .NET に切り替えることは理にかなっていますか? すべて: サービス、データベース接続 (オブジェクトの linq)、Web フロント、ajax など、すべてが 1 つの巨大な .NET 3.5 ソリューションに含まれています。
私も楽しみたいと思っていますが、サーバー側の C++ ほど楽しいものではありません :)
RoR の力があれば、どちらの側であろうと実際には問題にならないことを私は知っています。しかし、私がすべて .NET または Java 用にセットアップされているかどうかにかかわらず、私はまだそれを間違っていると感じています。
私は Web 開発の経験が非常に限られています。ASP.NET Web サービスを 1 回しか作成せず、Java Web サービスをサポートしたことがないので、ここでプラットフォームを選択できる本物の OCD を持っています。
jruby - Java クラス ファイルを JRuby にインポートできますか?
ドキュメントは、Java クラスを JRuby にインポートするには、それらが JAR ファイルに含まれている必要があることを示唆しているようです。
「JRuby から jar ファイル内のリソースを使用するには、jar ファイルがクラスパス上にある必要があります。または、require メソッドを使用して使用できるようにする必要があります」( http://wiki.jruby.org/wiki/Calling_Java_from_JRuby#Require_a_jar_file_to_make_resources_in_the_jar_discoverable_within_JRuby )
.class ファイルを直接インポートすることはまったく可能ですか?
ありがとう!
ruby - 条件付き gem の依存関係
インストール時に gem への依存関係を条件付きで設定することはできますか? これが私の状況であり、うまくいけば質問を明確にします。
json gem に依存する、私が管理している gem があります。ただし、json-jruby と呼ばれる json gem のポートを持つ jruby をよく使用します。これを回避するには、依存関係ごとに 2 つの個別の gem を作成する必要があります。json または json-jruby に依存するか、インストール時にチェックして適切な依存関係を使用するという 1 つの gem を作成したいと思います。
誰にもこれに対する良い解決策がありますか?
ruby - 非同期アラーム信号
alarm(2)
Ruby で POSIX (または類似のもの)への移植可能なインターフェースを探しています。つまり、バックグラウンド タイマーを設定して、n秒後に現在のプロセスにシグナルを送信できるようにしたいと考えています。
2006 年の ruby-talk リストで、 を使用した解決策を提供する良い議論を見つけましdl/import
たが、これはちょっとしたハック (巧妙なハックではありますが) であり、あまり移植性がありません。
非常に悪意のあるTimeout
モジュールを見てきましたが、従来のインタープリターでは問題なく動作しますが、JRuby の下では機能しません。私のプログラムは、Readline ライブラリを使用する小さなコマンドライン シェルです。
JRuby では、プロセスがreadline
呼び出しでブロックされ、 Timeout::Error
(a) タイマーが期限切れになり、(b) ユーザーが新しい行を入力した後にのみスローされるようです。そして例外は救出されません。うーん。
だから私はこの回避策を思いついた:
これは...不格好です(礼儀正しくしましょう)。私はただ欲しいalarm(2)
!このためにコア以外のライブラリ (Terminator など) をドラッグしたくありません。より良い方法はありますか?
編集:別の代替手段を取得できません-スリープしてからプロセスにシグナルを送信するスレッドを作成する-JRubyの下でも動作します。JRuby はシグナルを食べますか? 例:
JRuby は単純に戻り、Ruby は予想される「ハンドルされていない例外」エラーを返します。
ruby - JRubyとYARVのパフォーマンス---顕著な違いはありますか?
最新バージョンのRubyインタープリター(YARV)では、バイトコードのコンパイルによりパフォーマンスが大幅に向上することを読みました。私の質問は、JRubyに対してこれを実行しようとした人はいますか?Windowsでの実行に顕著な違いはありますか?
このリンクにはいくつかの優れたメトリックがありましたが、ほとんどはLinuxで実行されました... http://antoniocangiano.com/2007/02/19/ruby-implementations-shootout-ruby-vs-yarv-vs-jruby-vs-gardens-point -ruby-net-vs-rubinius-vs-cardinal /
前もって感謝します!
トッド