blog

npm v2.1.14で発生したObject.keys called on non-objectエラーの解消

    • Ryuichi Nonaka
    この記事は書かれてから1年以上経過しており、内容が古い場合があります。

    npmのエラー

    $ npm updateしようとしたらなにやらnpm ERR! Object.keys called on non-objectというエラーが大量に吐かれてパッケージがアップデートできず。

    npm ERR! Object.keys called on non-object
    npm ERR!
    npm ERR! If you need help, you may report this error at:
    npm ERR!     <http://github.com/npm/npm/issues>
    npm ERR! Darwin 14.0.0
    npm ERR! argv "node" "/Users/nukos/.nodebrew/current/bin/npm" "update" "-g"
    npm ERR! node v0.10.32
    npm ERR! npm  v2.1.14
    

    解決方法

    調べてみたところ、npmのissuesに同様の課題TypeError: Object.keys called on non-object, build.js:111:18 #3443が上がっていたので流し読みしてみたところ、npmの2.1.17にアップデートすることで解消できるらしい。

    $ sudo npm install -g npm@next
    /Users/nukos/.nodebrew/current/bin/npm -> /Users/nukos/.nodebrew/current/lib/node_modules/npm/bin/npm-cli.js
    npm@2.1.17 /Users/nukos/.nodebrew/current/lib/node_modules/npm
    

    理由まではよくわかっていないけれど無事アップデートできるようになった。

    $ sudo npm update gulp-sketch --save-dev
    gulp-sketch@0.0.6 node_modules/gulp-sketch
    ├── clean-sketch@1.0.1
    ├── temporary@0.0.8 (package@1.0.1)
    └── through2@0.6.3 (xtend@4.0.0, readable-stream@1.0.33)
    

    コメント・フィードバック