【问题标题】:RVM doesn't seem to play well with ruby-1.9.3-preview1RVM 似乎不能很好地与 ruby​​-1.9.3-preview1 配合使用
【发布时间】:2011-09-27 03:50:49
【问题描述】:

按照以下步骤更新我的 rvm 后,我安装了 ruby​​-1.9.3-preview1:

 » rvm get head
 » rvm reload
 » rvm install ruby-1.9.3-preview1

然后我为我的项目创建一个 gem 集并尝试使用它。

 » rvm --create ruby-1.9.3@myproject
 » rvm use ruby-1.9.3@myproject

我通过以下方式对其进行测试:

 » ruby -v                         
ruby 1.9.3dev (2011-07-31 revision 32789) [x86_64-darwin11.1.0]

但是当我尝试使用它时:

 » bundle exec rails server
/Users/<home>/.rvm/gems/ruby-1.9.2-p290@envision/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:239:in `block in require': iconv will be deprecated in the future, use String#encode instead.
=> Booting WEBrick

它似乎仍在使用旧版本的 Ruby。有没有其他人遇到过这个问题,还是我做错了什么?

编辑

我原本打算安装最新的ruby-1.9.3-rc1。我按照上面相同的步骤切换到使用它,但仍然遇到同样的问题。

【问题讨论】:

    标签: ruby ruby-on-rails-3 rvm bundler


    【解决方案1】:

    我想我发现了这个问题,这似乎与 rvm 或 ruby​​-1.9.3 完全无关。我的捆绑程序配置有问题。我希望这对看到没有使用宝石套装感到惊讶的人有所帮助。

    所以,

     » bundle config
    Settings are listed in order of priority. The top value will be used.
    
    path
      Set for the current user (/Users/<home>/.bundle/config): "/Users/<home>/.rvm/gems/ruby-1.9.2-p290@myproject"
    
    ….
    

    这意味着默认情况下它总是使用路径下的 gem 集。

     » bundle config path ''
    

    似乎解决了这个问题。我确信有更好的方法可以通过显式删除来删除捆绑配置默认值上的任何配置覆盖。但到目前为止,这很有效,我的新 gem 集使用了 1-.9.3-rc1。不幸的是,并不是我所有的 gem 都使用 1.9.3-rc1 编译,特别是 gherkin-2.2.9 的问题。让我知道是否有人让它工作。我猜这是一个不同的问题。

    编辑

     » bundle config path ''
    

    这样做是个坏主意。我很快就意识到我的错误,因为这将直接默认当前用于创建您的 gemset。

     » bundle config path $GEM_HOME
    

    在确保 GEM_HOME 指向 …/ruby-1.9.3-rc1@myproject 之后,上述内容更好。所以是的,我仍然想知道如何让捆绑配置使用默认值,所以我不必自己更改它。我尝试在myproject 目录下编辑 .bundle/config,但没有成功。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多