2011-11-13 42 views
4

我加入这config/application.rb添加了一些外部罐到我的CLASSPATH:如何正确添加到JRuby on Rails项目中的CLASSPATH?

require 'java' 
$CLASSPATH << "#{File.dirname(__FILE__)}/../backend/src/" 
Dir["#{File.dirname(__FILE__)}/../backend/lib/*.jar"].each do |jar| 
    require jar 
end 

此使用rails server的运转轨道时工作正常。加载CLASSPATH中的罐子。但是,在运行rake时,未设置类路径。我该如何设置它?特别是,我需要在加载我的宝石之前设置它,因为我使用JRClj gem,它依赖于我的CLASSPATH中已经有clojure.jar。

(呵呵,我也试图把在environment.rb中的代码;没有帮助)

通过“不行”,我的意思是:

$ rake rspec --trace 
rake aborted! 
No such file to load -- /MY_CURRENT_WORKING_DIRECTORY/clojure.lang.RT 
org/jruby/RubyKernel.java:1063:in `load' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:234:in `load' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:223:in `load_dependency' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:640:in `new_constants_in' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:639:in `new_constants_in' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:223:in `load_dependency' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/activesupport-3.1.1/lib/active_support/dependencies.rb:234:in `load' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/rake_module.rb:25:in `load_rakefile' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/default_loader.rb:6:in `load' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:569:in `load_imports' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:508:in `raw_load_rakefile' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:82:in `load_rakefile' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:81:in `load_rakefile' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:65:in `run' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:133:in `standard_exception_handling' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/rake-0.9.2.2/lib/rake/application.rb:63:in `run' 
/Users/pbiggar/.rvm/gems/[email protected]/gems/rake-0.9.2.2/bin/rake:33:in `(root)' 
org/jruby/RubyKernel.java:1063:in `load' 
/Users/pbiggar/.rvm/gems/[email protected]/bin/rake:19:in `(root)' 

回答

相关问题