/ / No se encuentra la referencia a Thrift al ejecutar el ejemplo de Thrift de nodejs: javascript, node.js, thrift, thrift-protocol

Referencia a Thrift no encontrada al ejecutar nodejs Thrift example - javascript, node.js, thrift, thrift-protocol

Estoy intentando ejecutar el ejemplo de ahorro de servidor / cliente de nodejs pero no puedo hacer que se ejecute. Inicialmente, agregué el ahorro como una dependencia en mi package.json archivo. Entonces hice un npm install que instaló el ahorro. Entonces intenté ejecutar el servidor usando node NodeServer.js. Me sale un error similar cuando intento correr NodeClient.js.

Enlace al tutorial de Thrift nodejs - http://thrift.apache.org/tutorial/nodejs

He adjuntado la salida de los comandos relevantes a continuación.

h@h-vbox:~/git/nodejs-thrift$ ls
gen-js  NodeClient.js  NodeServer.js  package.json  shared.thrift  tutorial.thrift
h@h-vbox:~/git/nodejs-thrift$ npm install

> ws@0.4.32 install /home/h/git/nodejs-thrift/node_modules/ws
> (node-gyp rebuild 2> builderror.log) || (exit 0)

make: Entering directory "/home/h/git/nodejs-thrift/node_modules/ws/build"
CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
bufferutil.target.mk:92: recipe for target "Release/obj.target/bufferutil/src/bufferutil.o" failed
make: Leaving directory "/home/h/git/nodejs-thrift/node_modules/ws/build"
nodethrift-server@0.0.1 /home/h/git/nodejs-thrift
└─┬ thrift@0.9.3
├── node-int64@0.3.3
├── q@1.0.1
└─┬ ws@0.4.32
├── commander@2.1.0
├── nan@1.0.0
├── options@0.0.6
└── tinycolor@0.0.1

npm WARN nodethrift-server@0.0.1 No description
npm WARN nodethrift-server@0.0.1 No repository field.
npm WARN nodethrift-server@0.0.1 No license field.
h@h-vbox:~/git/nodejs-thrift$ node NodeServer.js
/home/h/git/nodejs-thrift/gen-js/Calculator.js:384
Thrift.inherits(CalculatorClient, SharedServiceClient)
^

ReferenceError: Thrift is not defined
at Object.<anonymous> (/home/h/git/nodejs-thrift/gen-js/Calculator.js:384:1)
at Module._compile (module.js:410:26)
at Object.Module._extensions..js (module.js:417:10)
at Module.load (module.js:344:32)
at Function.Module._load (module.js:301:12)
at Module.require (module.js:354:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (/home/h/git/nodejs-thrift/NodeServer.js:21:18)
at Module._compile (module.js:410:26)
at Object.Module._extensions..js (module.js:417:10)
h@h-vbox:~/git/nodejs-thrift$

Respuestas

2 para la respuesta № 1

Resultó que estaba cometiendo un error al generar mis archivos de ahorro utilizando el js bandera de la js:node bandera. La forma correcta de generar estos archivos es,

thrift -r --gen js:node tutorial.thrift