non vorrei lavorare

ブログ名の通りです。javascript three.js mruby rust OCaml golang julialang blender

Electron 1.2系だとNodObjCが多分使えない

最近、これまで、次男が体調を崩し、保育園から呼び出されることが続いていましたが、久しぶりに長男が熱を出して、呼び出されました。kjunichiです。

久しぶりにElectronを触った

KeyCastJsのElectronのバージョンを上げようとしたら、一悶着あった際のメモ。

具体的なエラー

App threw an error during load
TypeError: error setting argument 0 - writePointer: Buffer instance expected as third argument
    at TypeError (native)
    at Object.writePointer (/Users/junichi/work/electron/keycastjs/node_modules/ref/lib/ref.js:742:11)
    at Object.set (/Users/junichi/work/electron/keycastjs/node_modules/ref/lib/ref.js:484:13)
    at Object.alloc (/Users/junichi/work/electron/keycastjs/node_modules/ref/lib/ref.js:516:13)
    at Object.proxy [as objc_getClassList] (/Users/junichi/work/electron/keycastjs/node_modules/ffi/lib/_foreign_function.js:50:22)
    at Object.getClassList (/Users/junichi/work/electron/keycastjs/node_modules/nodobjc/lib/core.js:112:18)
    at Object.importFramework [as import] (/Users/junichi/work/electron/keycastjs/node_modules/nodobjc/lib/import.js:328:24)
    at Function.framework (/Users/junichi/work/electron/keycastjs/node_modules/nodobjc/lib/index.js:226:16)
    at Object.<anonymous> (/Users/junichi/work/electron/keycastjs/src/main.js:10:9)
at Module._compile (module.js:541:32)

とりあえずの対応

v1.0.2だと動いたので、KeyCastJsのElectronはこのバージョンで様子を見ることに。

~(チルダ)を指定して、マイナーバージョンも固定

"electron-prebuilt": "~1.0.2",