vinshield
vinshield

Reputation: 53

Vercel cannot find multer package

I wrote backend code that uses the multer package tried deploying it on vercel. But I got this error screen and the following error message in the logs:

enter image description here

Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'multer' imported from /var/task/backend/controllers/entriesController.js at new NodeError (node:internal/errors:405:5) at packageResolve (node:internal/modules/esm/resolve:965:9) at moduleResolve (node:internal/modules/esm/resolve:1022:20) at moduleResolveWithNodePath (node:internal/modules/esm/resolve:876:12) at defaultResolve (node:internal/modules/esm/resolve:1242:79) at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:403:12) at ModuleLoader.resolve (node:internal/modules/esm/loader:372:25) at ModuleLoader.getModuleJob (node:internal/modules/esm/loader:249:38) at ModuleWrap. (node:internal/modules/esm/module_job:76:39) at link (node:internal/modules/esm/module_job:75:36) { code: 'ERR_MODULE_NOT_FOUND' } INIT_REPORT Init Duration: 308.35 ms Phase: init Status: error Error Type: Runtime.ExitError Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'multer' imported from /var/task/backend/controllers/entriesController.js at new NodeError (node:internal/errors:405:5) at packageResolve (node:internal/modules/esm/resolve:965:9) at moduleResolve (node:internal/modules/esm/resolve:1022:20) at moduleResolveWithNodePath (node:internal/modules/esm/resolve:876:12) at defaultResolve (node:internal/modules/esm/resolve:1242:79) at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:403:12) at ModuleLoader.resolve (node:internal/modules/esm/loader:372:25) at ModuleLoader.getModuleJob (node:internal/modules/esm/loader:249:38) at ModuleWrap. (node:internal/modules/esm/module_job:76:39) at link (node:internal/modules/esm/module_job:75:36) { code: 'ERR_MODULE_NOT_FOUND' } INIT_REPORT Init Duration: 417.87 ms Phase: invoke Status: error Error Type: Runtime.ExitError Error: Runtime exited with error: exit status 1

Here's a portion of my package.json:

"dependencies": {
    "body-parser": "^1.20.2",
    "cors": "^2.8.5",
    "dotenv": "^16.3.1",
    "express": "^4.18.2",
    "firebase": "^9.23.0",
    "firebase-admin": "^12.0.0",
    "luxon": "^3.4.4",
    "multer": "^1.4.5-lts.1",
    "uuid": "^9.0.1"
}

Upvotes: 0

Views: 259

Answers (1)

Nir Alfasi
Nir Alfasi

Reputation: 53525

The error ERR_MODULE_NOT_FOUND indicates that Node.js is unable to find the multer package when attempting to import it in your entriesController.js file. This is likely because the multer package is not installed or is missing from your project's dependencies.

Try running from your project root: npm install multer

and verify that it's listed in package.json under dependencies (for example):

"dependencies": {
  "multer": "^1.4.5", 
  ...
}

You should also make sure that multer is installed under node_modules folder!

And last: did you try to redeploy your code to vercel?

Upvotes: 0

Related Questions