【问题标题】:Travis CI Build doesn't install gems for JRuby platformTravis CI Build 不为 JRuby 平台安装 gems
【发布时间】:2015-10-18 05:26:39
【问题描述】:

我为我的项目设置了一个 travis 构建,它也在 JRuby 上运行。我在Gemfile 中为:jruby 平台提到了activerecord-jdbcsqlite3-adapter gem:

platforms :jruby do
  gem "activerecord-jdbcsqlite3-adapter"
end

但构建仍然总是失败并显示消息 LoadError: Please install the sqlite3 adapter:gem install activerecord-sqlite3-adapter(sqlite3 is not part of the bundle. Add it to Gemfile.) 并且 gem 实际上没有安装。

项目在https://github.com/simplabs/rails_api_auth开源,构建在https://travis-ci.org/simplabs/rails_api_auth

【问题讨论】:

    标签: ruby sqlite gem travis-ci


    【解决方案1】:

    在 sqlite3 的 travis-ci 上,docs 似乎表明您需要 'jdbc-sqlite3:

    platforms: jruby do
      gem 'jdbc-sqlite3'
      gem 'activerecord-jdbc-adapter'
    end
    

    编辑

    实际上,我认为您真正的问题是您签入了 Gemfile 锁定文件(Gemfile.lock && gemfiles/*.lock)。 Travis-ci 没有重新评估特定平台需要哪些 Gem。

    【讨论】:

      【解决方案2】:

      如果你这样做会发生什么?:

      platforms :jruby do
        gem 'sqlite3'
        gem 'activerecord-jdbcsqlite3-adapter'
      end
      

      也许适配器仍然依赖于 sqlite3 gem 中的类(这是我目前从错误中读到的)

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-03
      相关资源
      最近更新 更多