在 Windows 中执行以下步骤后发生错误:
npm run start:devng 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"
},
Run Code Online (Sandbox Code Playgroud)
错误日志:
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)
Run Code Online (Sandbox Code Playgroud)
Len*_*man 18
对于 VsCode 用户:
检查您尝试删除的目录/文件夹是否在终端中打开。可能有多个终端实例,因此请检查是否有。
更改在终端中打开的目录或终止该终端实例将解决该问题。
如果这些都不起作用,请关闭 vscode 并重试。谢谢@Vugar Abdullayev
您看到此错误的主要原因是程序出于某种原因锁定了文件夹。在一次关闭一个程序的同时测试该命令可以帮助解决问题并让您知道哪个程序是罪魁祸首。
人们遇到的一个问题是 Windows 上的反恶意软件。您可以在此处阅读此主题:
https://github.com/npm/npm/issues/13461
如果链接在这里停止工作是最受好评的评论:
在 Windows 10 64 位操作系统中,我通过卸载反恶意软件软件解决了这个问题。
触发此错误的另一种方法是,如果您正在运行npm run [command]while cd 进入其更改的目录。这发生在我身上,我关闭了每个程序但它不起作用,但意识到我在dist需要删除和重建的文件夹中。这Error: EBUSY: resource busy or locked, rmdir在 PowerShell 中触发了错误,并且每次都可以重现。
这是通过覆盖一些 npm 发生的,因此它锁定了你的源代码
解决方案(我所做的 npm cache clean 也不起作用,然后我删除了包锁开始工作)
只需删除包锁
清理缓存。
npm cache clean
还清除缓存(可选)
npm install --cache
| 归档时间: |
|
| 查看次数: |
53674 次 |
| 最近记录: |