[Sass] watch オプションでエラーがでて直らなかった時のこと
Sass で watch オプションを使ったらエラーがでてしまい対処出来ずに、結局 Sass をインストールし直すことでなんとかエラーは消えました…。ぐぐると簡単に直るようなエラーで、治らないケースはあまりないようなのでやってみたことなどをまとめました。
バージョン
Mac OS 10.9.2
Sass 3.2.9
ruby 2.0.0
出たエラーメッセージ
[Listen warning]:
Missing dependency 'rb-fsevent' (version '~> 0.9')!
Please run the following to satisfy the dependency:
gem install --version '~> 0.9' rb-fsevent
For a better performance, it's recommended that you satisfy the missing dependency.
Listen will be polling changes. Learn more at https://github.com/guard/listen#polling-fallback.
普通このエラーがでた時は rb-fsevent をアップデートすれば直るようです。
参考:【Sass】ターミナルからwatchオプションでディレクトリ監視した際に警告エラーが出来たときの対処法メモ | バシャログ。
rb-fsevent をアップデートする
ターミナルへ以下のコマンドを打ち込みます。
sudo gem install --version '~> 0.9' rb-fsevent
パスワードを入力してしばらくすると以下のメッセージがでました。インストールできた感じなので、これでOKと思ったら watch オプションつけて監視を始めたら同じ再びエラーがでてしまいました。
Successfully installed rb-fsevent-0.9.4
Parsing documentation for rb-fsevent-0.9.4
1 gem installed
何回か rb-fsevent をアップデートして再起動して watch するというのをやってみましたが、状況かわらず…。
listen をインストールする
よくわからなかったので listen のエラーが出た時はこれで直るみたいなのを見て、listen をインストールしてみました。しかし、もうすでにインストールはされていたと思うので関係なかったです…。
sudo gem install listen
gem をアップデートする
sudo gem update --system
gem のバージョンは関係なかったみたいで、エラーは治らず…。結局原因不明で Sass をアンインストールしてインストールしなおしました。
Sass のアンインストール
Sass をアンインストールする場合は以下のようにコマンドを入力します。
sudo gem uninstall sass
以下のメッセージがでるので、「Y」を入力してリターンをおします。
Remove executables:
sass, sass-convert, scss
in addition to the gem? [Yn]
しばらくして
Successfully uninstalled sass-(バージョン)
がでてアンインストール終了です。
Sass のインストール
Sass をインストールし直します。
sudo gem install sass
これでエラーがやっと消えました!ここまでやって気がついたのですが、Sass のバージョンが古かったようなので、Sass だけアップデートしても直ったかもしれません。
もし Sass だけアップデートするなら以下のコマンド。
sudo gem install sass
原因など
Sass に何か問題があったということだと思いますが、結局原因は不明で少し気持ち悪いですが、エラーが消えたのでよかったです。
あと、今回のトラブルで gem について少し理解できました。(Sass をインストールした時は完全にコピペで自分が何を行ったのかわからない状態でした…。)
gem というのは Ruby のライブラリのことなんですね。(Ruby ライブラリ)jQuery でいうところの gem は jQuery本体で、Sass は jQueryプラグインという感じでしょうか??。Ruby と gem と Sass の関係性などが少し理解できたので七転び八起きです。
まったく同じ状況で困っていたところでした。大変助かりましたm(_ _)m ありがとうございます。
miiko さま
お役に立てたならとてもうれしいです( ^ω^ )
コメントありがとうごさいました!