概要
みなんさんこんにちはcandleです。今回は間違って入れてしまったり、不必要になったgemの削除のやり方を紹介します。
前提
ruby on railsの環境が整っている
gemの概念を理解している。
適当にgemをインストールする
試しに何かサンプルとなるgemをインストールしたいと思います。
システムに影響しないgemとしてrailsのエラーを美しく表示してくれる「better_errors」を導入して削除したいと思います。
適当なrailsのプロジェクトを作るなり既存のものを使うなりします。
私は例によってbootstrap3プロジェクトを使って説明していきます。
下の記述を書き込みましょう。
gem "better_errors"
保存したら、下のコマンドを実行してgemをインストールします。
bundle install
サンプルgemがインストールできました。
gemの動作確認をする
better_errorsがちゃんと動作しているか確認するために、わざとエラーがおきる記述をします。
app/controllers/application_controller.rbのclassの中に下の記述を書き込みます。
make error
これでサーバを再起動して、ブラウザで見ると、美しいエラー画面がでます。
better_errorsのgemが動作しているのがわかりました。
gemを削除する
仮に、このエラー画面じゃやだ、デフォルトのエラー画面の方が良いということで、better_errors gemを削除するようになりました。
一般にbundle でインストールしたgemを削除するには下のコマンドを打ちます。
bundle exec gem uninstall ゲムの名前
例えば、今回の例のbetter_errorsをuninstallするには
bundle exec gem uninstall better_errors
と実行します。エラーみたいなのが出るかもしれませんが、問題ありません。
このuninstallが終わってからGemfileを開いて、今アンインストールしたgemの記述を削除しましょう。
例えば、今回の場合ですと、「gem “better_errors”」を消します。
これでbundle でインストールしたgemの削除が完了しました。
まとめ
phpにしてもrubyにしても最近はライブラリをそれぞれのプロジェクトの中に持つようになりました。phpのpearはPC全体でライブラリを持ち、それぞれのphpプログラムがそこから参照して使うようになっていましたが、時代の流れ的にはプロジェクト毎になっていくのでしょう。この方法も知っておくと便利ですね。