【问题标题】:Rails 3. Could not find libv8-3.3.10.4 in any of the sourcesRails 3. 在任何源中都找不到 libv8-3.3.10.4
【发布时间】:2012-03-02 15:22:49
【问题描述】:

我第一次尝试运行cap deploy,但出现此错误...

[11.12.13.140] sh -c 'cd /var/www/releases/20120302151641 && bundle install --gemfile /var/www/releases/20120302151641/Gemfile --path /var/www/shared/bundle --deployment --quiet --without development test'
** [out :: 11.12.13.140] Some gems seem to be missing from your vendor/cache directory.
** [out :: 11.12.13.140] Could not find libv8-3.3.10.4 in any of the sources

我的 Gemfile 中有这个 gem 'libv8', '3.3.10.4'

我将我的 gem 打包在 vendor/cache 目录中,我确实有这个 gem libv8-3.3.10.4-x86_64-linux

为什么我不断收到此错误?我该如何解决?

【问题讨论】:

    标签: ruby-on-rails ruby capistrano


    【解决方案1】:

    在目标机器上执行gem install --version '=3.3.10.4' libv8

    【讨论】:

    • 这个答案对我来说失败了,出现:错误:安装 libv8 时出错:错误:无法构建 gem 原生扩展。 /usr/bin/ruby.exe extconf.rb *** extconf.rb 失败 ***
    【解决方案2】:

    您确定需要包装吗? Capistrano 为我做了bundle install,所以我就做了

    rm -rf vendor/cache
    bundle install
    

    问题消失了,因为现在在目标机器上编译了 gem。

    如果您仍需要打包,请参阅this 问题以获得细粒度解决方案。

    【讨论】:

    • +100 我已经为此苦苦挣扎了很长时间。刚刚删除了那个文件夹,一切都很开心。谢谢!
    【解决方案3】:

    如果您的本地环境与您的生产环境不同,最简单的方法是从以下位置下载您的生产环境所需的版本:

    https://rubygems.org/gems/libv8/versions

    将其保存到您的供应商/缓存目录中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-17
      • 1970-01-01
      • 2014-03-02
      • 2018-08-01
      • 2013-06-22
      • 1970-01-01
      相关资源
      最近更新 更多