Railsコマンド実行時に"Could not find [gem name] in any of the sources"が出るときの対応
Railsアプリの設定時、bundle install
して必要ライブラリがインストールされているのにも関わらず、"Could not find [gem name] in any of the sources"とエラーが出て、genarate等が出来なくてハマりそうになった。。。
いろいろググって見たので、同じ症状に悩ませられている人への助けになればと
調査
この症状は他にもいろいろ出ているようで、いくつか対応策になるのかと調べてみた。
- Ruby - bundle install すると Could not find xxx in any of the sources と怒られる場合の対処法 - Qiita
- Ruby - Could not find XXXX in any of the sources エラーの修正方法 - Qiita
- rakeコマンドが通らずに壮絶にハマった件 - 東京伊勢海老通信
- rails generate Could not find <gem> in any of the sources | package playne
対応策あれこれ
上記のリンクを参考に大まかにどんな対応をしているのかまとめてみました。
- $HOME/.gemを削除
- .bundle/configの
BUNDLE_DISABLE_SHARED_GEMS:‘1’
の行をを削除 - gem パッケージのアップデート
- bundlerのアップデート
- Gemfile.lockを削除
- springプロセスをkill
結果
自分の環境では、Gemfile.lockを削除し、bundlerをアップデート、springプロセスをkillしたところ、無事rails g
コマンドが通るようになりました。
もうちょっとエラーの内容を詳しく表示して欲しいところです。。。