Как использовать ActiveRecord в скрипте JRuby вне Rails? - PullRequest
0 голосов
/ 07 декабря 2011

Я хотел бы использовать JRuby для запуска скрипта, который заполняет базу данных. Я уже запускаю JRuby / Rails для сервера Rails в другом приложении, и эта настройка работает.

Я выполнял скрипт (foo.rb) нормально, пока не попытался включить гем ActiveRecord в строку 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

Мой список драгоценных камней включает все рельсы 3.0.10, activerecord 3.0.10, activerecord-jdbc-adapter 1.2.0, activerecord-jdbcmysql-adaptor 1.2.0.

У меня также есть переменная окружения (JRUBY-OPTS = - 1.9), которая указывает JRuby запускать версию 1.9, когда я использую Rails.

Чего мне не хватает, чтобы заставить JRuby 1.9 работать с ActiveRecord 3.0.10, чтобы поразить базу данных MySQL?

1 Ответ

4 голосов
/ 08 декабря 2011

Измените ваш запрос на:

require 'active_record'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...