ruby-on-rails – JRuby on Rails:将文件夹添加到类路径

我正在尝试将整个文件夹添加到我的Rails应用程序的JRuby 1.5类路径中。 JRuby Wiki建议如下:“…将config目录添加到config / environment.rb中的JRuby类路径:”

$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"))}/"

同样的错误。

使用Rails将文件夹添加到JRuby类路径中的正确方法是什么?

需要java。这就是使$ CLASSPATH变量生效。

include Java
$CLASSPATH << "your/folder"

在JRuby的1.0版本之前,您需要使用“java”,但是在现代的JRuby中,默认无效。

http://stackoverflow.com/questions/3190877/jruby-on-rails-adding-a-folder-to-the-classpath

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:ruby-on-rails – JRuby on Rails:将文件夹添加到类路径