問題タブ [jrubyonrails]
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.
ruby-on-rails - HSQLDB を Rails アプリに埋め込む際の無効な SQL
Rails アプリを JRuby と HSQLDB に移植する作業を行っています。私の目標は、データベースとサイトを単一の JAR ファイルに組み込み、顧客のサイトにデプロイすることです。私はサイトを JAR から非常にうまく機能させていますが、いくつかの注目すべき問題があります。
かなりありふれた ActiveRecord モデルで次のことを行うと、次のようになります。
次の例外が発生します。
ActiveRecord::StatementInvalid (ActiveRecord::ActiveRecordError: 集計関数または句によってグループ化されていません: ステートメントの org.hsqldb.Expression@7be117eb [SELECT count(session_logs.id) AS count_id FROM session_logs WHERE (created_at >= '2010-02- 06' AND created_at <= '2010-03-09' AND session_type = 'tunnel_client') ORDER BY ID DESC ]:
SELECT count(session_logs.id) AS count_id FROM session_logs WHERE (created_at >= '2010-02-06' AND created_at <= '2010-03-09' AND session_type = 'tunnel_client') ORDER BY id DESC )
COUNT ステートメントが HSQLDB で問題を引き起こしていることは明らかですが、これを修正するための解決策がわかりません。SQLite3 と MySQL はどちらも、この SQL ステートメントを問題なく処理します。
私は HSQLDB 以外の別のデータベースを使用することにオープンですが、JVM 上のアプリケーションに埋め込むことができる必要があります。それがHSQLDBの魅力です。
java - jruby が有効な java_opts について不平を言うのはなぜですか
以下を使用して正確なヒープサイズを設定するために、Java の最小/最大ヒープサイズをSun Docsで概説されているものと同じになるように設定しました。
これは、Tomcat を起動すると問題なく動作しますjruby
が、コマンド ラインから実行すると、次のように不平を言います。
VM の初期化中にエラーが発生しました
互換性のない最小および最大ヒープ サイズが指定されました
いくつかの -JX パラメータに関するjruby ドキュメントを読みましたが、通常の jvm 設定を明示的にオーバーライドする必要があるのはばかげているようです。
問題は、デプロイを行うときに発生します。私は自分のサーバーで実行しようとしjruby -S rake db:migrate
ましたが、文句を言います。
jruby を実行するときに JVM 設定を明示的にオーバーライドする必要があるというのは本当ですか? 任意の Xms/Xmx 値が jruby に文句を言うようです。
更新 したがって、一部の設定は実際に機能するようです。たとえば、これらはすべて機能します。
しかし、これらはしません:
ruby-on-rails - jruby rails アプリでの ESB の遅延読み込み
以下を使用した jruby/rails アプリがあります。
現在、environment.rb ファイルでは、イニシャライザで Mule を起動しています。db:migrate などの JMS/Mule を必要としない通常の rake タスクを実行する場合、毎回 Mule を起動/シャットダウンするのに長い時間がかかるため、これは大きな苦痛になります。
コードは次のようになります。
そしてAPP_CONTEXT
、適切なサービスに接続するために Bean をフェッチするために使用します。
初期化時にMuleを起動しなければならないというすべての苦痛を回避するために、APP_CONTEXTを(初期化ではなく)遅延してインスタンス化できるメカニズムを見つけようとしています。
現在、application_controller で before_filter としてインスタンス化される ruby クライアント クラスがいくつかあります。これ@data_service = DataService.new(APP_CONTEXT)
は、コントローラーで使用するための各要求に対して適切な Java クライアントを初期化するなどです。
私はすべての提案を受け入れます。この怠惰なインスタンス化を配置する適切な場所を見つけるのに苦労しています。
java - AppEngine JRuby - OutOfMemoryError: Java heap space - 解決できますか?
私は AppEngine JRuby on Rails (SDK バージョン 1.3.3.1) を使用しています - 私がよく遭遇する問題は、いくつかのリクエストの後、サーバーが停止し、端末 (OSX) で OutOfMemoryError をスローするまで、サーバーが非常に遅くなることです。
リクエスト自体は非常に軽量で、DataMapper を使用してエンティティを探したり保存したりするだけです。
アプリスポットでは、この問題は発生していません。
JRuby のヒープ領域を拡大する方法はありますか?
例外ログ:
ruby-on-rails - jrubyのCucumber-railsは、bundlerを使用してgemをアプリのルートディレクトリにインストールします
インストールされたばかりで、OSXにjruby-1.4.0がインストールされcucumber 0.7.2
ています。cucumber-rails 0.3.1
バンドルインストールを実行すると、すべてのgemコード/依存関係を含むcucumber-railsディレクトリがメインアプリに配置されます。
まず第一に、これは間違いなく私が望んでいることではなく、なぜこれがキュウリレールだけで起こるのかわかりません。
次に、このフォルダーを削除して、キュウリレールを手動でインストールすると、実行すると次のscript/generate feature blah
ようになります。
同様に実行するrake cucumber
と、
したがって、明らかに何かが機能しません。そのcucumber-railsディレクトリを再び追加すると、rake cucumber
実際に実行されます。
Railsアプリにgemをインストールする必要がある理由を誰かに教えてもらえますか?私はこれを前に見たことがありません。
セットアップ
jruby-1.4.0
キュウリ-0.7.2
キュウリレール0.3.1
バンドラー
0.9.23webrat0.7.1
編集
これに加えて、私はこれを機能させることにうんざりしていると判断したので、Gemfileからすべてのキュウリ/キュウリレールのデップを削除して再実行しましbundle install
た。それでもcucumber-railsディレクトリが作成され、さらに、そのディレクトリが存在しない限り(rakeなど)何も実行できません。存在しない場合はsource index not created from disk
メッセージが表示されます。
EDIT2
私は自分Rails.root/.bundle/config
が持っていることに気づきましたBUNDLE_PATH: cucumber-rails
。なぜこれがそこにあるのか誰かが知っていますか?
ruby-on-rails - Bundler と JRuby を使用した Rails のデプロイ戦略
私は jruby rails アプリを持っていて、gem の依存関係管理にバンドラーを使い始めたところです。展開戦略について人々の意見を聞くことに興味があります。ドキュメントによるとbundle package
、宝石をローカルにパッケージ化するので、サーバーでそれらをフェッチする必要はありません (そして、ウグイスはデフォルトでこれを行うと信じています)。コード (この場合は WAR ファイル) ははるかに大きくなります。
私の好みは、コードがサーバーにコピーされた後、すべての依存関係をサーバーに直接フェッチする MVN セットアップを模倣することです。これが私が考えていることです、すべてのコメントは大歓迎です:
Step1: war ファイルをビルドし、サーバーにコピーする
Step2: サーバーで war をアンパックし、mvn で Java の依存関係をフェッチする Step3: Bundler を使用して Gem deps をフェッチする (これらはどこに配置する必要がありますか??)
* Step 3 はステップです。の上。bundle install
特定のターゲットを念頭に置いて実行しますか??
ステップ 4: Tomcat を再起動します
繰り返しますが、ここでの私の推論は、展開時に依存関係をコードから分離したいということです。また、アプリ ユーザーのホーム ディレクトリにインストールするのではなく、すべての gem 依存関係をアプリ自体に配置して、含まれるようにしたいと考えています (繰り返しますが、これが Bundler のデフォルトであると考えています)。
ruby-on-rails - activerecord-jdbcを使用してRails2.3で主キーにbigintデータ型を使用する方法
Rails1.2から2.3に移植しているRailsアプリがあります。また、RubyMRIから最新バージョンのJRubyにも移行しています。
既存の(Rails 1.2)アプリでは、mysql_bigintプラグインを使用して、主キーとして64ビットintをサポートしています。
MS SQL 2005データベースサーバーに対して実行されている新しいアプリケーションについても、同じことを行う必要があります。
ここのスニペットが役立つかどうかはわかりません:レールと多形関係の主キーとしてUUIDを使用する
どこから始めればいいですか?
TIA
デイブ
ruby-on-rails - JRuby on Rails の開発モードでビュー ファイルの自動リロードを有効にするにはどうすればよいですか?
JRuby on Rails でアプリを開発しています。何らかの理由で、ビュー ファイルを編集すると、開発中の JRuby Mongrel サーバーがファイルをリロードしません。ややこしいのは、コントローラ ファイルを編集した後、サーバーが次のリクエストでそれらをリロードすることです。
これは MRI Ruby を使用している場合でも面倒ですが、ビューを編集するたびに JRuby Mongrel を起動するのは非常に遅く、さらに面倒です。(一度起動すると非常に高速であることに注意してください。唯一の問題は起動です。JRuby Mongrel を起動するたびに、JVM をロードする必要があります。)
JRuby 1.5.0、Rails 2.3.5、および Java 6 を実行しています。
ruby-on-rails - JRuby on RailsにはどのWebホスティングサービスを使用していますか?
サーバー側でJava機能が必要なため、JRubyonRailsを使用してWebサイトを開発しています。私はそれを展開することを考えています、私はJSPをサポートするホスティングサービスを使用する必要があります。私は正しいですか、それが私に必要なすべてですか?または、自分のサイトを展開するために必要な他の何かがありますか?どうすればこれを行うことができますか?
ruby-on-rails - jruby on rails 2.3を使用して宝石をどのように解凍しますか?
すべてのシステム gem を展開して、すべての rails gem とすべてのシステム gem を含むスタンドアロンの Rails ディレクトリを作成しようとしています。
ベアレールのセットアップから始めています。jruby -S rails と 'generate jdbc' を実行しました。次に、config.gem 'jdbc-mysql' を environment.rb に追加し、jruby -S rake gems:unpack:dependencies を実行します。
開梱後、レーキを実行すると、次のようになります。
jdbc gem をアンパックするために他に何かする必要がありますか?
私は jruby 1.4.0 (そして 1.5 への移行は私の todo リストにあります) と rails 2.3.8 を使用しています。