找不到兼容的gem“rubyzip”版本

时间:2017-12-04 05:22:54

标签: ruby-on-rails ruby caracal

我正在使用

gem'axlsx_rails'

gem'aject_as_xlsx'

将文件下载到excel中。 现在我正在尝试添加以下gem

gem'caracal'

将文件下载到docx中。 无论何时,我都试图运行

捆绑安装,我收到以下错误

  

Bundler找不到gem“rubyzip”的兼容版本:In   快照(Gemfile.lock):       rubyzip(= 1.0.0)

     

在Gemfile中:       acts_as_xlsx被解析为1.0.6,这取决于         axlsx(> = 1.0.13)被解析为2.0.1,这取决于           rubyzip(〜> 1.0.0)

caracal was resolved to 0.1.0, which depends on
  rubyzip (~> 1.1)
     

运行bundle update将使用从头开始重建快照   只有Gemfile中的宝石才能解决冲突。

我的宝石文件如下所示

  

来源'https://rubygems.org'

     

gem'trail','4.1.9'

     

gem'mysql2','〜> 0.3.19'

     

宝石'sass-rails','〜> 4.0.3'

     

gem'uglifier','> = 1.3.0'

     

gem'coffee-rails','〜> 4.0.0'

     

gem'jquery-rails'

     

gem'jbuilder','〜> 2.0'

     

gem'sddoc','〜> 0.4.0',group :: doc

     

gem'prring',group :: development

     

宝石'设计'

     

组:开发做

     

gem'beight_errors'

     

gem'binding_of_caller'

     

gem'capistrano','〜> 3.4.1'

     

gem'capistrano-rails'

     

gem'capistrano-bundler'

     

gem'capistrano-rvm'

     

     

gem'therubyracer'

     

gem'less-rails'

     

gem'twitter-bootstrap-rails','3.2.0'

     

gem'cancan'

     

gem'carrierwave',github:'carrierwaveuploader / carrierwave'

     

gem'rmagick'

     

gem'caracal'

     

gem'activerecord-session_store',github:   '轨道/了activerecord-session_store'

     

gem'carmen-rails','〜> 1.0.0'

     

宝石'邪恶'

     

gem'figaro'

     

gem'bootstrap-datepicker-rails'

     

gem'axlsx_rails'

     

gem'actions_as_xlsx'

2 个答案:

答案 0 :(得分:0)

axlsx_rails宝石已经更新了很长一段时间,它取决于axlsx宝石的版本,该版本取决于1.0.x rubyzip版本}}。而caracal取决于版本>= 1.1。也就是说:该宝石的当前版本不能一起使用。

axlsx 1.3.6的更旧版本对rubyzip gem的依赖程度更为宽松 - 它只需要其版本为>= 0.9.5

因此,我建议 - 如果可能 - 将axlsx_rails降级为0.1.2并再试一次:

# add a version to the axlsx_rails gem in your Gemfile
gem 'axlsx_rails', '0.1.2'

再次运行bundle install

答案 1 :(得分:0)

我已经通过添加

解决了这个问题
  

gem'axlsx','〜> 2.1.0.pre'

在gem文件中。这首先出现错误,然后我不得不更新rubyzip。之后我跑

  

捆绑安装