我想使用JRuby运行填充数据库的脚本。我已经在另一个应用程序中为Rails服务器运行JRuby / Rails,并且此设置有效。

我一直运行脚本(foo.rb)直到尝试将ActiveRecord gem包含在第2行中。代码如下所示:

require 'rubygems'
require 'activerecord'
require 'csv'
nf=[]
Dir["./*.*"].each{|f|nf<<f if File::ctime(f) + 600 > Time.now}
nf.each{|f| p f.inspect}


我得到的错误如下所示:

unix> jruby --1.9 foo.rb
LoadError: no such file to load -- activerecord
require at org/jruby/RubyKernel.java:1047
require at /home/user/.rbenv/versions/jruby-1.6.4/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36
(root) at foo.rb:2


我的gem清单包括所有rails 3.0.10,activerecord 3.0.10,activerecord-jdbc-adapter 1.2.0,activerecord-jdbcmysql-adapter 1.2.0。

我还有一个环境变量(JRUBY-OPTS =-1.9),它告诉JRuby在使用Rails时运行1.9版。

我想让JRuby 1.9与ActiveRecord 3.0.10一起运行以击中MySQL数据库,我缺少什么?

最佳答案

将您的要求更改为:

require 'active_record'

关于mysql - 如何在Rails之外的JRuby脚本中使用ActiveRecord?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8408439/

10-13 00:50