2011-08-25 102 views
3

我嘗試將SQLite數據庫用於我的jruby項目。針對jruby的SQLite數據庫問題

當我試圖安裝sqlite3的寶石收到以下錯誤

C:\tibbr\main\community_manager>gem install sqlite3-ruby 

大廈原生擴展。這可能需要一段時間... 錯誤:安裝sqlite3-ruby時出錯: 錯誤:無法構建gem本機擴展。

C:/tibbr/main/tools/jruby/bin/jruby.exe extconf.rb 警告:JRuby中不支持原生擴展或mkmf' library. Check http://kenai.com/projects/jruby/pages/Home for alternatives. extconf.rb:10: undefined method dir_config」主:對象(NoMethodError)

寶石文件將繼續安裝在C:/tibbr/main/tools/jruby/lib/ruby/gems/1.8/gems/sqlite3-1.3.4中進行檢查。 記錄到C的結果:/tibbr/main/tools/jruby/lib/ruby/gems/1.8/gems/sqlite3-1.3.4/ext/sqlite3/gem_make.out

有什麼建議嗎?提前致謝

回答

7

是的,JRuby不喜歡原生擴展。這是迄今爲止我遇到的幾個之一。由於senthil提到,切換到jdbc適配器解決此問題。在配置改變的一個例子:

的Gemfile

# gem 'sqlite3' 
gem 'activerecord-jdbcsqlite3-adapter', :require => 'jdbc-sqlite3', :require =>'arjdbc' 
1

其非常簡單,我們需要一個jave(sqlitejdbc-v056.jar)lib文件來支持jruby。

而我使用jdbc適配器爲我的項目和使用gem(activerecord-sqlite3-adapter)。 它的工作正常。對不起,很簡單的問題。