Next JS : Error: EPERM: operation not permitted, open

Viewed 2360

I am trying to build the next Js app production files to deploy it on cPanel, when I execute npm run dev the app is working just fine but as I start to build a production file with the help of this video(https://youtu.be/1ykSXau838c) and executes npm run build it gives me an error in the terminal as given below:

PS C:\Users\hp\Desktop\reactJs-project\NextJs\test-app> npm run build

> test-app@0.1.0 build
> next build

info  - Checking validity of types
info  - Creating an optimized production build .node:events:368
      throw er; // Unhandled 'error' event
      ^

Error: EPERM: operation not permitted, open 'C:\Users\hp\Desktop\reactJs-project\NextJs\test-app\.next\trace'
Emitted 'error' event on WriteStream instance at:
    at emitErrorNT (node:internal/streams/destroy:157:8)
    at emitErrorCloseNT (node:internal/streams/destroy:122:3)
    at processTicksAndRejections (node:internal/process/task_queues:83:21) {    
  errno: -4048,
  code: 'EPERM',
  syscall: 'open',
  path: 'C:\\Users\\hp\\Desktop\\reactJs-project\\NextJs\\test-app\\.next\\trace'
}

so I just want to know is there any way to solve this problem?

3 Answers

Posting comment from Koronag as an answer (as it helped me with this error and seems the most likely cause)...

This error is commonly seen when running a build while the dev server is already running. (E.g. in my case, I had a local build running via npm run dev and was trying to commit/push code, which invoked a Git Hook that also runs npm run dev.)

For me, it works fine this answer drives me to the resolver. I run 2 scripts in terminals:

  • once for development
  • another for the build process.

So after killing the development script it looks perfectly fine!

From next-sitemap repo README.md

"Having next-sitemap command & next-sitemap.js file may result in file opening instead of building sitemaps in windows machines.

As a solution to this, it is now possible to use a custom config file instead of next-sitemap.js. Just pass --config .js to build command."

Next-Sitemap README.md - Building Sitemaps

The above worked for me

Related