hexoでCannot find moduleエラー
hexoコマンド実行時にエラーが出力される
発生環境は以下の通り。Archでは出ていない。
- iojs v3.0.0
- OSX 10.10.4
各コマンド実行時に以下のエラーが出力される。
1 | { [Error: Cannot find module './build/Release/DTraceProviderBindings'] code: 'MODULE_NOT_FOUND' } |
調べたらissueが上がっていた。
cf. hexo shows error message · Issue #1055 · hexojs/hexo
解法
1 | npm install hexo --no-optional |
すると良いみたい。試したところ確かにエラーが出なくなった。あるいは、最初のnpm install
時に
1 | npm install --no-optional |
としてもエラーは出なかった。
–no-optional
npmのドキュメントによると
The –no-optional argument will prevent optional dependencies from being installed.
とのこと。
package.json
--no-optional
を付けるかどうかでpackage.jsonは変化するだろうか。
1 | npm install hexo --no-optional --save |
結論からいうと、package.jsonは変わらなかった。
別ディレクトリにgit clone
してnpm install
するとエラーが発生する。