Rails 3.2プロジェクトをWeblogic 10.3にデプロイする際にこの問題にぶつかり、簡単な答えを探していました。ActiveRecordに定数Baseがありません。 3.2.9 jruby 1.7.2からweblogic 10.3
org.jruby.exceptions.RaiseException: (NameError) ActiveRecord is not missing constant Base!
at RUBY.load_missing_constant(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:494)
at RUBY.const_missing(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:192)
at org.jruby.RubyArray.each(org/jruby/RubyArray.java:1613)
at RUBY.const_missing(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:190)
at RUBY.(root)(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/meta_search-1.1.3/lib/meta_search.rb:55)
at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:1027)
at ActiveSupport::Dependencies::Loadable.require(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:251)
at ActiveSupport::Dependencies::Loadable.load_dependency(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:236)
at ActiveSupport::Dependencies::Loadable.require(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:251)
at RUBY.(root)(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/activeadmin-0.5.0/lib/active_admin.rb:1)
at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:1027)
at ActiveSupport::Dependencies::Loadable.require(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:251)
at ActiveSupport::Dependencies::Loadable.load_dependency(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:236)
at ActiveSupport::Dependencies::Loadable.require(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:251)
at RUBY.(root)(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/activeadmin-0.5.0/lib/active_admin.rb:1)
at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:1027)
at RUBY.(root)(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/activeadmin-0.5.0/lib/activeadmin.rb:1)
at org.jruby.RubyArray.each(org/jruby/RubyArray.java:1613)
at RUBY.(root)(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/activeadmin-0.5.0/lib/activeadmin.rb:1)
at org.jruby.RubyArray.each(org/jruby/RubyArray.java:1613)
at RUBY.(root)(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/bundler-1.2.3/lib/bundler/runtime.rb:1)
at RUBY.require(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/bundler-1.2.3/lib/bundler/runtime.rb:68)
at RUBY.require(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/bundler-1.2.3/lib/bundler/runtime.rb:66)
at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:1027)
at RUBY.require(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/bundler-1.2.3/lib/bundler/runtime.rb:55)
at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:1027)
at RUBY.require(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/gems/gems/bundler-1.2.3/lib/bundler.rb:128)
at RUBY.(root)(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/config/application.rb:13)
at RUBY.(root)(<app_deploy_dir>/<app_name>/mfey8c/war/WEB-INF/config/environment.rb:1)
環境次のようになります。 のJRuby 1.7.2、JRockitの1.6、Railsの3.2.9、ムシクイ
は、私は基本的な2モデルを展開プラスユーザープロジェクトを考案し、私はそれを参照する場合、このエラーが発生しますブラウザで誰もこれを見たことがありますか?これはJRubyの最初のスティントです。
編集:
最新の失敗した試みを追加しています。注:私はjruby、jruby-jarsを1.6.8,1.7.0,1.7.2で試してみましたが、成功しませんでした。ここに私の宝石ファイルやムシクイの構成は次のとおりです。
#source 'https://rubygems.org'
source "http://bundler-api.herokuapp.com"
gem 'rails', '<3.3'
# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'
gem 'savon'
#gem 'jruby-openssl'
gem 'json'
#gem 'ffi', '~>1.0.9'
#gem 'sqlite3'
gem 'rake', "=10.0.2"
gem 'activerecord-oracle_enhanced-adapter', "~> 1.4.0"
# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'sass-rails', '<3.3'
gem 'coffee-rails', '<3.3'
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
#gem 'therubyrhino'
#gem 'therubyracer'
#gem 'libv8'
gem 'uglifier', '>= 1.0.3'
end
platforms :jruby do
group :assets do
gem 'therubyrhino'
end
group :development, :test do
gem 'ruby-debug'
gem 'activerecord-jdbcsqlite3-adapter', "~> 1.2.5"
gem 'warbler'
end
gem 'jruby-jars', "1.7.0"
gem 'jruby-openssl', :require => false
end
platforms :ruby do
group :assets do
gem 'therubyracer'
gem 'libv8'
end
group :development, :test do
gem 'debugger'
gem 'sqlite3'
end
gem 'ruby-oci8', '~> 2.1.0' # requires oracle client
end
gem 'jquery-rails'
gem 'devise'
gem 'activeadmin'
gem 'rb-readline'
gem 'validates_timeliness', '~> 3.0'
gem 'wash_out'#, :path => "~/Desktop/code/wash_out"
# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'
# To use Jbuilder templates for JSON
# gem 'jbuilder'
# Use unicorn as the app server
# gem 'unicorn':path
# Deploy with Capistrano
# gem 'capistrano'
# To use debugger
# gem 'uby-debug'
group :development do
end
group :test do
gem 'cucumber-rails', :require => false
#gem 'cucumber', :require => false
gem 'shoulda-matchers'
gem 'json_spec'
gem 'vcr'
gem 'fakeweb'
gem 'database_cleaner'
gem 'launchy'
gem 'webrat'
gem 'json_spec'
#gem 'capybara'
#gem 'mocha'
end
group :development, :test do
#gem 'activerecord-sqlite3-adapter', :platform => :ruby
#gem 'activerecord-jdbc-sqlite3-adapter', :platform => :jruby
gem 'rspec-rails'
gem 'factory_girl_rails', "~> 4.0"
end
そして(さえずり戦争を使用して)ムシクイ設定:
class Warbler::Jar
def replace_compiled_ruby_files(config, compiled_ruby_files)
config.excludes += compiled_ruby_files
compiled_ruby_files.each do |ruby_source|
files[apply_pathmaps(config, ruby_source, :application)] = StringIO.new("load __FILE__.sub(/\.rb$/, '.class')")
end
end
end
Warbler::Config.new do |config|
config.dirs = %w(app config lib log vendor tmp)
config.webxml.jruby.compat.version = "1.9"
end
回避策を提案できますか?この問題は、6月に1.7.0に修正されました。私は1.7.2,1.7.1,1.7.0,1.6.8を試しましたが、修正されていないようです。バグは正確で正確な記述になっていますが、jRubyの経験があまりないため、jRubyのバグを報告するために診断を行うことはできません。 –
バンドルをアップデートできますか? RailsのデフォルトのGemfileは 'gem 'rails'、 '〜> 3.2.x''を' gem' rails '、' <3.3''に変更してバグ修正リリースを入手します。 'sass-rails'と' coffee-rails'と同じです。 ActiveSupport 3.2.9は多少古く、現在のバージョンは3.2.11です。 – ckruse
バンドルの更新は行っていません。私は1.6.8 - > 1.7.2とその間のすべてを試しました。このエラーメッセージ全体が非常に曖昧であるため、特定のエラーについて絞り込むための具体的な情報やガイダンスはありますか? –