라즈베리파이에서 IoT플랫폼 연동중에 Error가 발생했다.


/home/pi/node/thyme/thyme-2.0.0.copy/node_modules/mqtt/node_modules/websocket-stream/server.js:6

class Server extends WebSocketServer{

^^^^^

SyntaxError: Unexpected reserved word

    at exports.runInThisContext (vm.js:73:16)

    at Module._compile (module.js:443:25)

    at Object.Module._extensions..js (module.js:478:10)

    at Module.load (module.js:355:32)

    at Function.Module._load (module.js:310:12)

    at Module.require (module.js:365:17)

    at require (module.js:384:17)

    at Object.<anonymous> (/home/pi/node/thyme/thyme-2.0.0.copy/node_modules/mqtt/node_modules/websocket-stream/index.js:2:14)

    at Module._compile (module.js:460:26)

    at Object.Module._extensions..js (module.js:478:10)



구글링을 하니 Node.js 버전을 업데이트하면 된다고 한다.

현재 버전을 체크 해봤는데 너무 옛날꺼인듯...


위와 같은 과정으로 Node.js 최신 버전 설치 후, 기존 소스 실행하니 잘되는 것을 확인



ref) https://askubuntu.com/questions/426750/how-can-i-update-my-nodejs-to-the-latest-version

https://stackoverflow.com/questions/40772047/nodejs-application-syntaxerror-unexpected-reserved-word-class