Я пытаюсь добавить всю папку к пути к классу JRuby 1.5 для моего приложения для направляющих. Wiki JRuby предлагает следующее: "... добавьте каталог конфигурации к пути к классу JRuby в config/environment.rb
:"
$CLASSPATH << "file:///#{File.expand_path(File.join(RAILS_ROOT, 'config'))}/"
Это, кажется, не работает на меня. Не имеет значения, поместил ли я это прежде, после или в Rails::Initializer.run
блок. Независимо от того, что, я получаю:
/home/sean/src/sbruby/seo/config/environment.rb:45:NoMethodError: undefined method `<<' for nil:NilClass
/home/sean/apps/jruby/jruby-1.5.0/lib/ruby/gems/1.8/gems/rails-2.3.7/lib/rails/backtrace_cleaner.rb:2:NameError: uninitialized constant ActiveSupport::BacktraceCleaner
/home/sean/apps/jruby/jruby-1.5.0/lib/ruby/gems/1.8/gems/rails-2.3.7/lib/console_with_helpers.rb:5:NameError: uninitialized constant ApplicationController
Например, я пытаюсь добавить папку под RAILS_ROOT
названный resources/foobar
, таким образом, я добавил следующее к environment.rb
:
$CLASSPATH << "file:///#{File.expand_path(File.join(RAILS_ROOT, "resources", "foobar"))}/"
Та же ошибка.
Что правильный путь состоит в том, чтобы добавить папку к пути к классу JRuby с направляющими?
Сначала требуйте java. Это то, что заставляет переменную $CLASSPATH жить.
include Java
$CLASSPATH << "your/folder"
В версиях JRuby до 1.0 вы бы сделали require 'java'
вместо этого, но в современной JRuby это молча не работает.