我尝试使用SQLite数据库为我的jruby项目。
当我尝试安装sqlite3 gem时,得到以下错误
C:tibbrmaincommunity_manager>gem install sqlite3-ruby
构建本地扩展。这可能需要一段时间……错误:安装sqlite3-ruby错误:错误:Failed to build gem native extension.
C:/tibbr/主/工具/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' for main:Object (NoMethodError)
Gem文件将继续安装在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
有什么建议吗?提前感谢
是的,JRuby不喜欢本地扩展。这是我目前遇到的几个问题之一。正如senthil所提到的,切换到jdbc适配器可以解决这个问题。配置更改的示例:
Gemfile
# gem 'sqlite3'
gem 'activerecord-jdbcsqlite3-adapter', :require => 'jdbc-sqlite3', :require =>'arjdbc'
这很简单,我们需要一个java (sqlitejdb -v056.jar) lib文件来支持jruby。
我正在使用jdbc适配器为我的项目和使用gem (activerecord-sqlite3-adapter)。它工作得很好。很抱歉我问了一个很简单的问题。