2016-04-26 177 views
0

我已经安装了rails和ruby使用自制软件,并从编码休息,最近试图升级我的软件包。安装由于红宝石版本的宝石问题

当运行:

bundle install --without production 

我收到以下错误信息:

Gem::InstallError: listen requires Ruby version ~> 2.2. 
An error occurred while installing listen (3.1.1), and Bundler cannot  continue. 
Make sure that `gem install listen -v '3.1.1'` succeeds before bundling. 

通过BREW更新检查,我有这么ruby 2.3我不清楚为什么这不会安装。

此外,当我尝试检查我的rails版本时,我收到以下错误。

Could not find gem 'rails_12factor (= 0.0.2) ruby' in the gems available on this machine. 

我很感激一个很好的教程的建议,使我能够通过更新过程或快速修复?

谢谢

+0

哪个版本的ruby在Gemfile中声明? –

+0

我宣布轨'4.2.2',但不是红宝石。当我在没有版本的情况下声明ruby时,它如上所述失败。如果我试图强制一个版本,它会失败并找不到版本。 – mhairic

+0

显示输出'bundle exec ruby​​ -v' –

回答

0

有时,捆绑商扼杀特定的宝石,就像你看到的。我发现的作品仅仅是做错误信息告诉你的,安装gem standalone。然后再运行捆绑器。它让给你另一个错误不同的宝石..

$gem install listen -v '3.1.1' 

$bundle install --without production 

,看看你得到另一个

Make sure that gem xxxx l-v '9.9.9' succeeds before bundling.

,然后安装宝石独立。等等。

通过这种方式,您可以浏览捆绑器并单独安装这些宝石。这样做,直到你得到一个干净的包。我没有看到这个文件记录在任何地方,但有时这是我发现首次获得捆绑的唯一途径。

警告:让我知道如果Ruby版本错误仍然是一个问题。我无法解释这一点。这可能是虚假的或不同的问题。

+0

这是不好的做法,因为列表应该安装到相同的环境 –

+0

它是相同的环境。您将永远无法通过捆绑软件,直到您按错误消息安装宝石。它告诉你你需要做什么。你只需要这样做。 – Elvn

+0

你不是OP。好奇你的解决方案是什么......请发布。 – Elvn