Denzil Gupta
Denzil Gupta

Reputation: 11

offline: Failure: package.json does not exist at /home/denzilgupta/serverless-testing/.webpack/service/services/trader/package.json

I am getting the following error while running serverless offline start

Can someone help me with this?

offline: POST /dev/trader/create (λ: CreateTrader) offline: Failure: package.json does not exist at /home/denzilgupta/serverless-testing/.webpack/service/services/trader/package.json Error: package.json does not exist at /home/denzilgupta/serverless-testing/.webpack/service/services/trader/package.json at Object.../../node-pre-gyp/lib/pre-binding.js.exports.find (/home/denzilgupta/serverless-testing/.webpack/service/services/trader/webpack:/home/denzilgupta/serverless-testing/node_modules/node-pre-gyp/lib/pre-binding.js:18:1) at Object.../../bcrypt/bcrypt.js (/home/denzilgupta/serverless-testing/.webpack/service/services/trader/webpack:/home/denzilgupta/serverless-testing/node_modules/bcrypt/bcrypt.js:5:1) at webpack_require (/home/denzilgupta/serverless-testing/.webpack/service/services/trader/webpack:/webpack/bootstrap:19:1) at Module.../../../services/trader/handler.js (/home/denzilgupta/serverless-testing/.webpack/service/services/trader/handler.js:164:64) at webpack_require (/home/denzilgupta/serverless-testing/.webpack/service/services/trader/webpack:/webpack/bootstrap:19:1) at /home/denzilgupta/serverless-testing/.webpack/service/services/trader/webpack:/webpack/bootstrap:83:1 at Object. (/home/denzilgupta/serverless-testing/.webpack/service/services/trader/handler.js:87:10) at Module._compile (internal/modules/cjs/loader.js:959:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:995:10) at Module.load (internal/modules/cjs/loader.js:815:32) at Function.Module._load (internal/modules/cjs/loader.js:727:14) at Module.require (internal/modules/cjs/loader.js:852:19) at require (internal/modules/cjs/helpers.js:74:18) at /home/denzilgupta/serverless-testing/node_modules/serverless-offline/dist/lambda/handler-runner/in-process-runner/InProcessRunner.js:67:133 at processTicksAndRejections (internal/process/task_queues.js:93:5) at InProcessRunner.run (/home/denzilgupta/serverless-testing/node_modules/serverless-offline/dist/lambda/handler-runner/in-process-runner/InProcessRunner.js:67:9)

Upvotes: 0

Views: 380

Answers (1)

Guilherme Branco
Guilherme Branco

Reputation: 21

Looks like bcrypt work as a native module for nodeJS, probably it contains some DLL and/or binaries. To load this kind of module nodeJS needs the full path to the lib, it does not work well with module bundlers like webpack. It would work as an external plugin but it seems that it does not attend your use case as you are using serverless framework and need to bundle everything together.

I suggest changing to bcryptjs, it is 30% slower because of the implementation in JS instead of using C++ but it works with webpack.

Upvotes: 2

Related Questions