You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Netbeans使用CN1构建CodeNameOne项目失败无法删除文件报错

构建报错日志如下:

Created dir: C:\Users\ruben\Documents\ProyectosCodenameOne\Tempus\build
Updating property file: C:\Users\ruben\Documents\ProyectosCodenameOne\Tempus\build\built-clean.properties
Deleting directory C:\Users\ruben\Documents\ProyectosCodenameOne\Tempus\build
C:\Users\ruben\Documents\ProyectosCodenameOne\Tempus\nbproject\build-impl.xml:1387: Unable to delete file C:\Users\ruben\Documents\ProyectosCodenameOne\Tempus\dist\README.TXT
BUILD FAILED (total time: 0 seconds)

问题原因

  • 核心原因是dist目录下的README.TXT文件被其他进程锁定占用,Ant构建脚本执行clean任务时无法删除被占用的文件,直接触发构建失败:
    • 常见占用场景:手动打开了该README.TXT未关闭、资源管理器预览窗口正在加载该文件内容、杀毒软件正在扫描dist目录、上次构建异常中断后残留的CodeNameOne构建进程还持有文件句柄
    • 少数情况为Windows权限问题,当前登录用户对dist目录没有修改/删除权限

解决方法

临时快速修复

  • 关闭所有可能占用该文件的程序:包括打开的文本编辑器、资源管理器中打开的dist目录页面,再重新执行构建即可
  • 如仍报错,重启Netbeans后再次构建,可解决绝大多数临时进程占用问题

永久解决方案

  • 若手动删除dist目录时系统提示文件被占用,可通过系统资源监视器定位占用进程:
    1. 按下Win+R输入resmon.exe打开资源监视器
    2. 切换到「CPU」标签,在「关联的句柄」搜索框输入该README.TXT的完整路径,即可看到持有文件锁的进程,右键结束对应进程后即可正常删除文件
  • 若为权限问题,右键点击dist目录,选择「属性」-「安全」,给当前Windows用户添加「完全控制」权限
  • 本地开发场景可修改Ant构建配置避免单个文件删除失败中断构建:找到build-impl.xml第1387行对应的delete任务,添加failonerror="false"属性,修改为<delete failonerror="false" ...>即可,正式打包环境不建议开启该配置。

内容的提问来源于stack exchange,提问作者Rubén Villarreal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 17:54:03