はじめに
VSCodeで開発をしていると、"シェル環境を解決できません"というようなエラーが発生することがあります。
公式情報の問題点
公式情報(https://code.visualstudio.com/docs/supporting/faq#_resolving-shell-environment-fails ) によると、.bashrcファイルに処理に時間を要する処理が記述されていないか確認するように書かれています。しかし、この情報だけでは原因を特定できない場合があります。
私の場合、.bashrcファイルは試しに新しく作ったアカウントと一切内容が同じでした。そのため何が原因かわからず苦労しました。
結局何が原因だったか
試しに.profileファイルに書いてあるnohupでバックグラウンドプロセス(時間がかかる)を起動するコードをコメントアウトしたら、エラーが解決しました。
- nohup /path/to/shellScript.sh &
+ # nohup /path/to/shellScript.sh &
.profileファイルにsleep 100を追記するだけで、エラーを再現することができます。
echo "sleep 100" >> ~/.profile
エラーの回避方法
下のサイトを参考に、以下のように.profileファイルを書き換えたところうまく行きました。なぜこれでうまく行くのかはわかりませんでした。。。
- nohup /path/to/shellScript.sh &
+ nohup /path/to/shellScript.sh >/dev/null 2>&1 &