Rails on Passenger 无法识别 RVM

2023-11-23

我已经使用 rvm 转向 ree:

rvm use ree@mygemset

并通过 Gemfile 和捆绑安装安装了 kaminari gem。

但Phusion乘客似乎仍在系统默认目录中寻找gem。它说:

Error message:
    Could not find kaminari-0.10.4 in any of the sources (Bundler::GemNotFound)

我缺少什么? Rails 需要任何特定配置来识别我正在使用的当前 ruby​​ 版本和 gemset?


您需要指示 Passenger 加载 RVM,然后为您的 gemset 设置环境。最简单的方法包括三个步骤:

  1. 创建一个.rvmrc file:在 Rails 项目的根目录中,创建一个名为的文件.rvmrc其中包含用于加载 gemset 的 RVM 命令。例如:

    rvm use ree@gemset
    
  2. 相信.rvmrc file:一旦部署了新的.rvmrc文件到您的服务器,将目录更改为您的 Rails 项目。 RVM 应该询问您是否愿意信任您的.rvmrc文件;只需按照说明进行操作并输入yes当被问到时。如果没有出现提示,请使用以下命令来信任您的.rvmrc:

    rvm rvmrc trust
    

    注意:如果您希望自动信任所有.rvmrcs,只需添加以下内容即可:

    rvm_trust_rvmrcs_flag=1
    

    到您的个人或系统范围的 rvmrc (~/.rvmrc and /etc/rvmrc, 分别)。

  3. 指导乘客设置RVM环境:指示乘客加载RVM并使用您的宝石组.rvmrc通过在 Rails 中创建一个新文件来创建文件config名为的目录setup_load_paths.rb (so config/setup_load_paths.rb在所有)。该文件应包含以下内容https://gist.github.com/870310:

    if ENV['MY_RUBY_HOME'] && ENV['MY_RUBY_HOME'].include?('rvm')
      begin
        rvm_path     = File.dirname(File.dirname(ENV['MY_RUBY_HOME']))
        rvm_lib_path = File.join(rvm_path, 'lib')
        $LOAD_PATH.unshift rvm_lib_path
        require 'rvm'
        RVM.use_from_path! File.dirname(File.dirname(__FILE__))
      rescue LoadError
        raise "RVM ruby lib is currently unavailable."
      end
    end
    
    # This assumes Bundler 1.0+
    ENV['BUNDLE_GEMFILE'] = File.expand_path('../Gemfile', File.dirname(__FILE__))
    require 'bundler/setup'
    

    现在,当您重新启动应用程序时(touch tmp/restart.txt)你应该可以走了。

您应该注意,Passenger 一次只能运行一个版本的 Ruby;如果 Passenger 是在 ree 之外的其他环境下设置的,您可能需要重新安装 Passenger 和/或重做它生成的包装器脚本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Rails on Passenger 无法识别 RVM 的相关文章

  • 当我运行 rake:db migrate 命令时,出现错误“未初始化常量 CreateArticles”

    我创建了一个模型 ruby 脚本 生成模型文章 简单就够了 这是迁移文件create articles rb def self up create table articles do t t column user id integer t
  • Rails 如何确定传入请求格式?

    我只是想知道 Rails 如何知道请求的格式以正确输入著名的 respond to do format format html format xml format json end 作为一个例子 考虑一下我遇到的这种情况 假设通过 java
  • Rails cron 每当捆绑:命令未找到

    我尝试使用 每当 每天执行一次耙子任务 我收到这个错误 bin bash bundle command not found home app rvm rubies ruby 1 9 2 p180 lib ruby site ruby 1 9
  • 使用 gem 添加辅助方法

    我找到了很多有关添加表单辅助方法的信息 请参阅我的其他问题之一 但我找不到有关添加辅助方法的任何信息 就好像它们是在application helper rb 我尝试过复制application helper rb从 Rails 应用程序到
  • 配置 session_store.rb 来处理登台和生产?

    我的 Rails 3 1rc6 应用程序上有一个使用子域的暂存和生产环境 我为这些环境购买并配置了不同的域名 因为默认的 some something herokuapp com 不能很好地与子域配合 当我将 session store r
  • 如何在Rails中显示URL指向的图像

    我这里有一张图片http power itp ac cn jmyang funny fun4 jpg http power itp ac cn jmyang funny fun4 jpg我想在我的 Rails 站点中显示它 我该怎么做 您还
  • jruby-openssl 中已初始化常量

    当在 Torquebox 上运行我的 Rails 应用程序时 我得到了很多 already initialized constant 警告源自gems jruby openssl 0 8 2 lib shared jruby openssl
  • RVM 安装问题 - 无法执行端口 (autoconf)

    我正在尝试在 OSX mountain lion 上安装 Jekyll 首先我想安装RVM 然后安装最新的ruby 但是 RVM 安装失败 我无法解决问题 任何帮助表示赞赏 这是我所做的 安装的 OSX 命令行工具 尝试安装 RVM cur
  • before_filter set_locale 除了控制器

    My routes rb MyApp Application routes draw do scope locale do all resources here end namespace blog do resources posts o
  • 尝试安装 Rails 时,执行 gem ... (Gem::RemoteFetcher::FetchError) 503 错误

    这是当我尝试使用 Ruby 2 1 1 和 RVM 执行 gem install Rails v 4 1 0 时出现的错误 错误 执行 gem 时 Gem RemoteFetcher FetchError 错误 响应服务不可用 503 ht
  • 将 mongoid 会话设置为只读

    我有不同的会话mongoid yml 其中一个会话提供来自静态 mongo 数据库的数据 我想知道是否有可能以只读模式 加载 会话 以便不进行任何更改save create destroy or destroy all可以制作 我的mong
  • 是否仍然可以在 Rails 4 中使用测试单元?

    从 Rails 3 2 升级到 Rails 4 后 我的应用程序可以运行 但我用测试单元编写的测试是一场灾难 据传 Minitest 与测试单元 兼容 然而 如果我尝试使用 现在捆绑的 Minitest 就会发现有很多差异 从断言 语句名称
  • MonkeyPatching ActiveJobs

    我在 ActiveJobs 的猴子修补部分遇到问题 我在 config initializers extensions arguements rb 中有以下代码 module ActiveJob module Arguments TYPE
  • 如何向 ActiveRecord 集合添加方法?

    我想为特定模型的所有集合添加一个方法 假设我想添加方法my complicated averaging method到 WeatherData 集合 WeatherData all limit 3 my complicated averag
  • 如何在 jQuery.ui.autocomplete 中的自动完成弹出窗口下方添加所有搜索的链接?

    我有使用 jQuery UI 自动完成插件的搜索建议自动完成功能 http jqueryui com autocomplete http jqueryui com autocomplete 但是如何添加结果弹出项目的底部 其行为类似于 Qu
  • 如何在 Ubuntu 中使用 gems?

    我最近升级到 Ubuntu 9 04 但在使用 gems 时遇到问题 我使用 apt get 安装了 Ruby Rubygems 和 Rails 这rails命令确实有效 然后我安装了 capistrano 和其他 gem 例如 herok
  • 找不到关联,Rails 3

    class Membership lt ActiveRecord Base belongs to role belongs to user end class User lt ActiveRecord Base has many roles
  • 导轨、定制探测器

    所以我希望能够使用来获取一个对象find by id or name 我觉得我看到了另一个这样的问题 但很难找到任何资源来制作我自己的查找器 您可以通过向模型添加类方法来做到这一点 例如 class Model lt ActiveRecor
  • 通过sprocket动态渲染sass文件

    我想从助手那里渲染一些变量 scss erb模板使用了image url 萨斯函数 template scss erb background image image url 到目前为止 ERB 部分很简单 利用这个堆栈溢出答案 https
  • RVM:“未找到 sha256sum 或 shasum”

    我刚刚在一台新机器上安装了 RVM 当切换到包含 rvmrc文件 我已接受 我得到 ERROR Neither sha256sum nor shasum found in the PATH 我使用的是 OS X 10 5 8 可能在某个地方

随机推荐