代码之家  ›  专栏  ›  技术社区  ›  Kevin

将导轨3安装到带RVM的OSX上

  •  14
  • Kevin  · 技术社区  · 14 年前

    自购买以来从未接触过这台机器上的Ruby或Rails。

    我试过:

    rvmsudo gem install rails -v 3.0.0
    sudo gem install rails --pre
    sudo gem install rails
    sudo gem update rails
    

    我每次都得到相同的结果:

    ERROR:  While executing gem ... (Errno::ENOENT)
        No such file or directory - /Users/kevin/.rvm/gems/ruby-1.9.2-head@rails3/cache/activesupport-3.0.0.gem
    

    本地宝石 什么都没列出来。

    我已经读了一些演练,但老实说,没有一个解决这个问题,这有点让我生气。为什么这么难安装?如果有人能帮我运行它,我会很乐意学习的。

    我试着遵循这一点:

    http://eddorre.com/posts/installing-rails-3-beta-4-using-rvm

    还有这个:

    http://hivelogic.com/articles/compiling-ruby-rubygems-and-rails-on-snow-leopard

    如果我这样做了 rails -v 我得到:

    rails -v
    /Library/Ruby/Site/1.8/rubygems.rb:779:in `report_activate_error': Could not find RubyGem rails (>= 0) (Gem::LoadError)
        from /Library/Ruby/Site/1.8/rubygems.rb:214:in `activate'
        from /Library/Ruby/Site/1.8/rubygems.rb:1082:in `gem'
        from /usr/bin/rails:18
    
    9 回复  |  直到 13 年前
        1
  •  27
  •   Community Egal    4 年前

    旧版本的rvm有一个bug,它会导致ruby版本交叉连接,因为操作系统可以缓存用户的可执行路径 哪一个 mind blowing post 由耶胡达·卡茨写的。

    今天早上我要做的是:

    rvm update && rvm reload # update rvm
    rvm gemset delete rails3 # delete old gemset
    rvm install 1.9.2
    rvm use 1.9.2
    rvm gemset create rails3
    rvm use 1.9.2@rails3
    which ruby          # check to be sure the ruby interpretter is properly set to 1.9.2
    hash -r             # if ruby interpretter is not pointing to 1.9.2
    gem install rails
    which rails         # check to be sure we are using rvm version of rails
    

    rvm get stable rvm update

        2
  •  2
  •   AboutRuby    14 年前

    在用rvm安装gems时,不需要使用sudo。如果你按照指示走 here 要安装RVM,您应该能够 rvm使用1.9.2;gem安装rails--版本3.0.0 .

        3
  •  2
  •   Jorge Israel Peña    14 年前

    您不必指定版本3。如果您有1.9.2-p0,当您 rvm gem install rails 3 . 注意:没有sudo。我认为当你使用sudo的时候,它会使用系统安装的ruby。如果你认为你需要sudo,使用 rvmsudo .

    事情可能变得一团糟,因为你在遵循基于rails预稳定版本的指南,这涉及到很多其他事情。如果您愿意,可以尝试卸载rvm并重新执行所有操作。其实没那么难。

    记住,你需要1.9.2,1.9.1不行。

    curl -O http://rvm.beginrescueend.com/releases/rvm-install-head
    sh rvm-install-head
    rvm install 1.9.2-p0
    
    # also remember to edit your bash profile and add the required lines
    
    # verify that 1.9.2-p0 shows up there
    rvm list
    
    # makes it so you're using it, and sets it as the default
    rvm use 1.9.2-p0 --default
    
    # verify this happened. should have => 1.9.2-p0 in the list
    rvm list
    
    # verify the version
    ruby --version
    
    # should automatically get 3.0
    # `rvm gem install` installs it for every single installed ruby version
    # in my experience
    gem install rails
    

    当你这么做的时候 rvm gem install ,我认为它会为您在rvm注册的每一个ruby版本安装它(至少在我的经验中是这样),所以我的假设是,它试图为一个旧的ruby安装强制安装rails3,但缺少所需的gem。

    别紧张,不需要太多命令。如果你发现自己不得不做“黑客”或变通方法,那么你就做错了。谢天谢地,重新开始很容易。要移除rvm,只需执行以下操作 rm -rfv ~/.rvm 还有 rm ~/.rvmrc 如果它在那里。

    告诉我进展如何。

        4
  •  2
  •   flummox    14 年前

    我自己作为新用户mac osx来解决这个问题

    好像没有缓存目录,试试看 mkdir$HOME/.rvm/gems/缓存

    到目前为止还不错。。。

        5
  •  1
  •   Pragnesh Vaghela    14 年前

    我遇到了同样的问题(尝试过按照Blaenk的建议卸载和安装)

    rvm 1.0.2作者:Wayne E.Seguin(邮箱:wayneeseguin@gmail.com) [ http://rvm.beginrescueend.com/]

    红宝石-v ruby 1.9.2p0(2010-08-18修订版29036)[x86\u 64-darwin10.4.0]

    安装导轨 错误:执行gem时。。。(错误号::eNote) 没有这样的文件或目录-/Users/pragnesh/.rvm/gems/ruby-1.9.2-p0/cache/activesupport-3.0.0.gem

        6
  •  1
  •   itsme    14 年前

    在执行“rvm update&rvm reload”之后,rvm被更新为1.04(而不是我昨天通过推荐的GIT安装获得的1.02!)效果不错。

        7
  •  1
  •   Hans W.    13 年前

    这个解决方案对我来说很有效,只需几句话:

    而不是使用 rvm update ,我不得不使用 rvm rubygems . 然后,在完成了2号岗位的所有工作之后,我不得不执行 bundle install rvm use 1.9.2@rails3 给我的 .rvmrc 文件。现在,即使在开始新的shell或终端会话时,一切都像一个符咒一样工作。我使用的命令的完整列表是:

    >> NEW >> rvm rubygems
    rvm reload                 # update rvm
    rvm gemset delete rails3   # delete old gemset
    rvm install 1.9.2
    rvm use 1.9.2
    rvm gemset create rails3
    rvm use 1.9.2@rails3
    which ruby                 # check to be sure the ruby interpretter is properly set to 1.9.2
    >> DID NOT NEED >> hash -r # if ruby interpretter is not pointing to 1.9.2
    gem install rails
    which rails                # check to be sure we are using rvm version of rails
    >> NEW >> bundle install
    >> NEW >> cat 'rvm use 1.9.2@rails3' > .rvmrc
    
        8
  •  0
  •   pdenlinger    14 年前

    遵循这些说明,发现它们对rvm安装非常有用。希望他们为你工作。

    http://adventuresincoding.com/2010/01/taking-the-helm-of-ruby-with-ruby-version-manager/

        9
  •  0
  •   jschorr    13 年前

    rm -rf .bundle && bundle install