[node] macOS에서 jest 실행시 FSEvents 오류 해결하기
이현수 책임
바쁘신 분들을 위해 결론부터
watchman
패키지를 최신으로 업그레이드 합니다.
# npm 사용자
$ npm uninstall watchman -g
# yarn 사용자
$ yarn global remove watchman
# 그리고...
# watchman 설치
$ brew install watchman
jest를 실행하는데 어느날 갑자기 에러 메시지가?
jest를 실행하면 보통 이렇게 뜹니다.
Press `a` to run all tests, or run Jest with `--watchAll`.
Watch Usage
› Press a to run all tests.
› Press p to filter by a filename regex pattern.
› Press t to filter by a test name regex pattern.
› Press q to quit watch mode.
› Press Enter to trigger a test run.
그런데 어느날 갑자기 jest를 실행하는데 아래와 같은 오류 메시지가 뜨는가요?
2017-06-28 14:14 node[6612] (FSEvents.framework) FSEventStreamStart: register_with_server: ERROR: f2d_register_rpc() => (null) (-22)
2017-06-28 14:14 node[6612] (FSEvents.framework) FSEventStreamStart: register_with_server: ERROR: f2d_register_rpc() => (null) (-22)
2017-06-28 14:14 node[6612] (FSEvents.framework) FSEventStreamStart: register_with_server: ERROR: f2d_register_rpc() => (null) (-22)
events.js:160
throw er; // Unhandled 'error' event
이런 현상은 macOS에서 파일 시스템의 변경을 감지하는 watchman
패키지의 버전이 jest와 호환이 안 되는 경우에 발생합니다.
watchman은 npm 패키지로도 제공되는데, 혹시 global로 설치 되었다면 제거하고 homebrew로 다시 설치해보십시오.
# npm 사용자
$ npm uninstall watchman -g
# yarn 사용자
$ yarn global remove watchman
# 그리고...
# watchman 설치
$ brew install watchman