28

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

> [email protected] 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?

2
  • Try this: stackoverflow.com/questions/34600932/… Commented Apr 13, 2022 at 4:14
  • 31
    Are you currently running the app in dev? If yes, cancel that process and try to build it again. Most likely the build is not able to access the trace due to being open by the dev process. Commented Apr 13, 2022 at 4:45

15 Answers 15

74

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.

Sign up to request clarification or add additional context in comments.

3 Comments

Yep. Rookie mistake, but I made it.
I wasted 3 hours fighting this 😭
For those with a Next.JS app in an Nx monorepo, I've also found that stopping the Nx daemon with nx daemon --stop can resolve this issue.
7

In my case, npm run dev was running in another terminal. I closed that and rerun the command. It worked fine.

Comments

5

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!

Comments

4

This also happen if your website is running on IIS. To run the dev server from terminal (code editor), stop the server on IIS and the error will go away.

Comments

3

Stop the server development, and try to build again. It works on me

Or if you want to force it (using Typescript) you can see on next docs right here https://nextjs.org/docs/app/api-reference/next-config-js/typescript

2 Comments

Your answer could be improved with additional supporting information. Please edit to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center.
While this link may answer the question, it is better to include the essential parts of the answer here and provide the link for reference. Link-only answers can become invalid if the linked page changes. - From Review
2

this error arises, when you are running the application in local. ->like you were doing this

"npm run dev" in one terminal and in another termianl -> you were trying to build the application for some use. "npm run build" so this won't work, and this will give the above error.

to solve, stop the running application in local then run "npm run build"

thanks.

Comments

1

This cause because your development mode is running, try to CTRL + C to close. And then start npm run build again.

Comments

0

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

Comments

0

I solve this error. 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.

Comments

0

you need to kill the ports that the app was running on them in the dev mode.

you can use the command : npx kill-port <port> like npx kill-port 3000

also you can combine the ports to terminated them at once like : npx kill-port 3000 3001 3002 3003

Comments

0

For my perspectation, I just terminated my current terminal and then reopen my project and then just commanded "npm run build" in my terminal again, Problem solved!

Comments

0

Kill the dev terminal then again run the npm run build

Comments

0

You need to enable Windows Developer Mode so that Preconstruct can create symlinks - https://www.howtogeek.com/292914/what-is-developer-mode-in-windows-10/

Comments

-1

You got this error because you were running quite too many processes simultaneously.

Simple solution that works for me: whenever you get this error, close your VS Code and open it again.

It works all the time. Hope this helps!

1 Comment

Not necessary, it could be due to permission issue as well. Please refrain from providing answers without getting the full context. And please follow community guidelines. Thanks.
-1

Try updating your nodejs using nvm and then try building it. It solved in my case.

1 Comment

This does not provide an answer to the question. To critique or request clarification from an author, leave a comment below their post. - From Review

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.