JRuby на направляющих: Добавление папки к пути к классу

Я пытаюсь добавить всю папку к пути к классу 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 с направляющими?

16
задан organicveggie 6 July 2010 в 23:13
поделиться

1 ответ

Сначала требуйте java. Это то, что заставляет переменную $CLASSPATH жить.

include Java
$CLASSPATH << "your/folder"

В версиях JRuby до 1.0 вы бы сделали require 'java' вместо этого, но в современной JRuby это молча не работает.

26
ответ дан 30 November 2019 в 21:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: