2017年12月7日木曜日

Visual studio code ENOSPC エラー


Visual studio code で拡張機能を作っているとたまに下記のようなエラーが出ることがあります。

fs.js:1385
    throw error;
    ^

Error: watch /home/kiya/Documents/vsc/nekoaisle.encode ENOSPC
    at _errnoException (util.js:1019:11)
    at FSWatcher.start (fs.js:1383:19)
    at Object.fs.watch (fs.js:1409:11)
    at watchPresentDirectory (/home/kiya/Documents/vsc/libs/node_modules/typescript/lib/tsc.js:2635:42)
    at fsWatchDirectory (/home/kiya/Documents/vsc/libs/node_modules/typescript/lib/tsc.js:2620:21)
    at Object.watchDirectory (/home/kiya/Documents/vsc/libs/node_modules/typescript/lib/tsc.js:2768:28)
    at addDirectoryWatcher (/home/kiya/Documents/vsc/libs/node_modules/typescript/lib/tsc.js:56930:21)
    at Object.watchDirectory (/home/kiya/Documents/vsc/libs/node_modules/typescript/lib/tsc.js:59955:20)
    at createDirectoryWatcher (/home/kiya/Documents/vsc/libs/node_modules/typescript/lib/tsc.js:59381:35)
    at watchFailedLookupLocationOfResolution (/home/kiya/Documents/vsc/libs/node_modules/typescript/lib/tsc.js:59348:81)

ビルド タスクのウォッチが終了しました。

このエラーたち悪いことの出たり出なかったりして悩んでいたのですがやっと解決方法がわかったのでメモ書きします。

もと情報はこちら https://vscode-doc-jp.github.io/docs/setup/linux.html#ENOSPC-エラー

1. 現在の設定の確認

$ sudo cat /proc/sys/fs/inotify/max_user_watches
65536

2. 設定ファイルの編集

$ sudo vi /etc/sysctl.conf

ファイルの末尾に下記を追加

fs.inotify.max_user_watches=524288

3. 設定を反映

$ sudo sudo sysctl -p

以上です。