在Windows中执行以下步骤后会发生错误:
npm run start:dev
ng build --watch
但是,通过使用以上命令,它可以在Mac中工作。 package.json配置的一部分是:
"scripts": {
"ng": "ng",
"start:dev:prod": "ng build --prod && cd dist/ && node static/server.js",
"start": "node static/server.js",
"build:prod": "ng build --prod",
"test": "ng test --code-coverage",
"lint": "ng lint",
"e2e": "ng e2e",
"start:dev": "npm run build & cd dist/ & SET APP_ENV=dev & node static/server.js",
"build": "ng build"
},
错误日志:
Error: EBUSY: resource busy or locked, rmdir 'C:\AngularProject\dist'
Error: EBUSY: resource busy or locked, rmdir 'C:\Spring-Intern-Projects\wdpr-accounting-reference-client\dist'
at Object.rmdirSync (fs.js:701:3)
答案 0 :(得分:16)
如果上述所有解决方案均不起作用,并且您正在使用Windows PC(例如我的情况),最简单的操作是:
按键盘上的 Windows键加 R 打开运行命令框,然后键入
resmon.exe
单击确定以打开资源监视器
现在,继续尝试在文件或文件夹上执行的操作。就我而言,我在通过npm使用 react-create-app 时遇到问题。 更多信息,请点击#117908
我只是希望它能对某人有所帮助。
答案 1 :(得分:1)
此问题是由于缓存原因,请在终端上运行以下命令
npm cache verify
答案 2 :(得分:1)
这是通过覆盖一些npm来发生的,因此它锁定了您的源代码
解决方案(我所做的npm缓存清理操作也不起作用,然后我删除了程序包锁并开始工作)
simply delete package-lock
清理缓存
npm cache clean
还清除缓存(可选)
npm install --cache
答案 3 :(得分:0)
您看到此错误的主要原因是由于程序出于任何原因将文件夹锁定。一次关闭一个程序时测试该命令可以帮助解决问题,并让您知道哪个程序是罪魁祸首。
人们遇到的一个问题是Windows上的反恶意软件。您可以在这里阅读此线程:
https://github.com/npm/npm/issues/13461
万一链接停止工作,这是最受好评的评论:
在Windows 10 64位操作系统中,我已通过卸载解决了此问题 反恶意软件软件。
另一种触发此错误的方法是,如果您正在运行npm run [command]
,而将其CD插入其更改的目录中。这发生在我关闭了每个程序的地方,但是我没用,但是意识到我在dist
文件夹中,需要将其删除并重建。这会在PowerShell中触发Error: EBUSY: resource busy or locked, rmdir
错误,并且每次都可以重现。
答案 4 :(得分:0)
我能够解决杀死npm和Java进程的问题。我在运行Cordova运行android时遇到问题,因此杀死npm和java进程可以帮助我解决问题。
答案 5 :(得分:0)
解决此问题的简单方法是:
/dist
目录。npm run generate
或运行npm run build
。答案 6 :(得分:0)
您可以删除以下文件夹,然后重试。为我工作。
C:\Users\{username}\AppData\Local\Temp\npm-xxxxxxxxxx\
答案 7 :(得分:0)
我遇到了同样的问题并找到了原因 - 该项目位于同步和锁定 node_modules 文件夹的 dropbox 文件夹中。 我关闭了保管箱,它起作用了。
答案 8 :(得分:0)
对于 Angular VsCode 用户:
检查您尝试删除的目录/文件夹是否在终端中打开。可能有多个终端实例,因此请检查您是否有。
更改目录或杀死该终端实例即可解决问题。
答案 9 :(得分:-3)
node_modules 文件夹中的内容会使驱动器上出现坏扇区,为此驱动器使用碎片整理和优化软件可以减少此类问题。