ruby-on-rails - java ニュース




「ramとgemをアンインストールしてエラーが発生しました」アンインストールできません。 'gem list-d…'を確認してください。 (5)

gem 1.8の古いバージョンのためのすべてのgemを削除するためのより一般的な答え。

gem list --no-versions | xargs sudo gemアンインストール-aIx

私はいつもの「noob」という「レールに慣れている」という行から始めます。 おお、そして私はMac OSX 10.6.4を動かしている

私はセットアップを始めるためにたくさんのガイドをフォローしてきましhere 。 ガイドは素晴らしいです、私が2番目を使う理由はRVMと私が最初を使う理由はMYSQLのためです。

とにかく、私が始めたとき、私は指示に完全に従っていませんでした、それで私はRVMをインストールした後、何らかの理由で私は必要なバージョンであるのでsudo gem install rails -v 2.3.8 。 それで、私はシステムrubyを使っていて、RVMを利用していないことに気づきました。 私が今したのはRuby 1.9.2をインストールしてrails 3をインストールしてテストできるようにすることです。また、1.8.7とrails 2.3.8もインストールして必要な用途に使用できるようにしました。

さて、私はシステムRubyからgemをアンインストールしようとしています、しかし私がしようとするたびに私はこのエラーを得ています:

エラー:gem ...の実行中に(Gem :: InstallError)
アンインストールできません、 'gem list -d アンインストールしようとしているgemはどれでも 'をチェックしてください。

レールとこれらすべての宝石を取り除く方法について何かアイデアはありますか? RVMを最初から始めたいだけです。

更新:

gem list -d railsコマンドを実行して、私は/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/18に宝石を見つけました。 手動で削除する必要がありますか?


rvmを使用するときに注意すべき2つの点があります。

  1. あなたは決して gemをインストールするのにsudoを使うべきではありません、ただgem install xxx

  2. グローバル gemsetにインストールされているgemを別のgemset内からアンインストールすることはできません。 グローバルgemsetに切り替えてそこからアンインストールする必要があります。


 rvm gemset use global
 gem uninstall xxx

この方法を試してください:

sudo apt purge rails

これをirbまたは適切なスクリプトで実行します。

`gem list --no-versions`.split("\n").each do |gem|
  `gem list -d #{gem}`.gsub(/Installed at(.*):.*/).each do |dir|
    dir = dir.gsub(/Installed at(.*): /,'').gsub("\n", '')
    system "gem uninstall #{gem} -aIx -i #{dir}"
  end  
end

私は宝石セットを管理するためにRVMを使用していましたが、宝石セットを選択していませんでした。 間違ったジェムセットを選択したのではなく、まったく選択していないということです。 夏休みの後、最初の朝の1時間を過ごすのに素敵な方法です。





rvm