#開発環境
macOS Catalina
Rails 6.1.3.2
Ruby 2.6.7
#VSCodeのターミナルがうまく動作しない
一から調べてRailsの環境構築を終えて、Macのターミナルからrails sを実行すると成功。
開発していく上で、VSCodeのターミナル(Cmd+Jで起動)を使った方が便利と思い、そちらでrails s。
すると...
% rails s
Rails is not currently installed on this system. To get the latest version, simply type:
$sudo gem install rails
You can then rerun your "rails" command.
Macのターミナルだとちゃんと動いているのに、VSCodeのターミナルからだと動かない...
#解決するためにやったこと1
VSCodeの設定を変える
VSCodeの設定を開き、設定の検索欄に「terminal.integrated.inheritEnv」と入力し表示されたチェックボックスのチェックを外す。
VSCodeを再起動する。
#解決するためにやったこと2
パスの記述ファイルを変更する
VSCodeのターミナル上でwhich rubyを実行すると/usr/bin/rubyとなり、環境構築で行ってきた.rbenv下ではなくなっている。(Macのターミナルからは元々.rbenv下となっていたが、PCの再起動などをしているうちにいつの間にかこちらも/usr/bin/rubyとなっていた...)
パス通したはずなのにおかしいなと思いながら調べていると、macOS Catalinaからは標準のシェルがzshになったそう。(参考にした記事はこちら)
環境構築で参考にしていた記事では、.bash_profileにパスを記述しており同じくそうしていました...
そこで
% vi ~/.zprofile
export PATH=~/.rbenv/bin:$PATH
eval "$(rbenv init -)"
PATH=/usr/local/bin/git:$PATH
export PATH
とパスを.zprofileに記述。(下2行はGitのパスです。)
.bash_profileに記述していたものは全て消しました。
そして変更を反映。
% source ~/.bash_profile
% source ~/.zprofile
できた!!!安心するいつもの画面!
(RailsにMySQLを使用しており、rails sした時にMySQLを起動できないよ!と言われて解決するまでに参考にさせていただいた記事を下記に貼っておきます。こちらで無事に起動することができました。)
mysqlが起動できない(Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2))
[mysql 起動時のThe server quit without updating PID file エラーの回避法]
(https://qiita.com/jonakp/items/477a18d4a94c01a31583)
#まとめ
しかるべきファイルにパスを通せていなかったことが原因でした。
開発環境をしっかりとチェックして、記事を参考にすることが大事だなと改めて感じました!