2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Gemfileにgemを記載しても、bundle installで認識されない

Posted at

起きていた事象

  • インストールしたいgemをGemfileに記載しても、bundle installでインストールできない

原因

  • 何らかの操作で、環境変数BUNDLE_GEMFILEが設定されており、特定のディレクトリにあるGemfileしか読み込まない設定になっていた

解決策

  • bundle configを実行し、環境変数BUNDLE_GEMFILEが設定されているか確認する
  • 設定されていたら、unset BUNDLE_GEMFILEで設定を削除する
  • source ~/.bashrcで設定を反映させる

解決に至った経緯

  • Gemfileにgemを記載して、bundle installを実行しても、以下が表示され、インストールできない
The Gemfile specifies no dependencies
  • Bundlerのバージョンや依存関係が原因かと思い、調べたが、特に解決できず
  • bundlerについて調べていくうちに、bundle configで設定を確認できることが判明
  • 実行すると、特定のディレクトリからGemfileが読み込まれていることを確認
  • そのGemfileを削除し、bundle installを再度実行すると、新たなエラーメッセージが出現
No such file or directory @ rb_sysopen - (指定されたパス)
  • 指定されたパスにGemfileがないのでエラーになっている
  • プロジェクトごとのGemfileを使うようにするためにはどうすればいいかを調べると、環境変数が関係していることが判明
  • 環境変数の設定を削除する方法を調べ、削除し、再度bundle installを実行すると、無事に解決

感想

  • 検索しても同じような症状の方が見つからず、解決までにかなり時間がかかってしまった
  • 一度諦め、gem installで個別にインストールしていたが、納得できず、再度解決を試みた
  • bundle installの仕組みを理解することで、無事に解決することができた
2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?