关于Java:Ant无法删除Windows上的某些文件

关于Java:Ant无法删除Windows上的某些文件

Ant is not able to delete some files on windows

我有一个蚂蚁建立,使目录,调用javac和所有常规的东西。 我遇到的问题是,当我尝试执行干净操作(删除生成的所有内容)时,删除任务报告无法删除某些文件。 当我尝试手动删除它们时,效果很好。 这些文件显然无法通过任何其他进程打开,但是ant仍然无法删除它们。 我能做什么?


我曾经遇到这个问题。
这是因为我尝试删除的文件是另一个任务的类路径的一部分。


这取决于 ...

  • Ant进程没有足够的权限来删除文件(通常是因为它们是由其他用户(可能是系统用户)创建的)。尝试使用运行方式以管理用户身份运行Ant脚本。
  • 当进程死机或被杀死时,Windows确实无法清理文件锁。因此,Windows认为该文件已被已终止(或已终止)的进程锁定。在这种情况下,除了重新启动之外,您无能为力。
  • 获得更好的工具来检查系统状态。我建议下载SysInternals工具并使用它们,而不要使用默认的Windows等效工具。


使用Ant Retry任务对我有帮助。
我刚刚将其包裹在"删除任务"周围。


我遇到了同样的问题。
我没有在计算机上设置任何类路径或运行防病毒软件。
但是,我使用的ANT版本是32位,而我安装的JDK是64位。
我安装了32位JDK,问题已解决。


您没有说您的构建是否以当前登录的用户身份运行。如果不是,explorer.exe或其他进程具有所示目录的事实也可能导致其被锁定。但是在相同的explorer.exe进程中将其删除将会成功。从http://ccollomb.free.fr/unlocker/尝试解锁,以查看哪些进程已锁定文件/目录。


1.8.0之前的Ant版本存在一个错误,该错误会导致删除操作期间出现随机错误。尝试使用Ant 1.8.0或更高版本。

您可以在这里查看错误详细信息https://issues.apache.org/bugzilla/show_bug.cgi?id=45960


Ant进程中是否有某些东西使文件(或目录)保持打开状态?这将导致您可以在运行ant之后而不是在运行期间删除它们的情况。


就我而言,我的蚂蚁清理无法从Eclipse中失败,无法删除构建文件。我不时看到这一点。通常会重复尝试成功。这次没有
尝试从命令行运行蚂蚁清理,失败无法删除"无法删除"。
一定是Eclipse保留了问题文件,当我退出Eclipse时,cmd行能够删除OK。


自从我切换到Microsoft Windows 10以来,我经常看到这种问题,在删除文件之前立即重命名文件可以为我解决:

1
2
<rename src="file.name" dest="file.name.old"/>
<delete file="file.name.old" />

就我而言,我停止从任务管理器运行Java进程,然后重新运行Ant构建文件。该文件能够删除,并且构建成功。


我遇到了这个问题,因为蚂蚁试图删除的文件正被其他服务/进程使用。
我停止了该服务,然后运行了ant build脚本。


您需要在Windows中手动将其删除。它为我工作。 (通常,要删除的文件是jar的较早版本。例如:如果存在httpcore.4.2.5.ja5r和httpcore.4.3.jar,它将尝试删除4.2.5.jar。)


我也有同样的问题,并尝试过手动删除构建目录。最后,我通过将项目的.jar工件重命名为与项目名称本身不同的名称来解决此问题。例如:我的项目是Portal,而我的ant构建脚本用于生成portal.jar,而eclipse ant无法删除此portal.jar。当我更改build.xml以将.jar生成为portalnew.jar时,eclipse下次可以删除此portalnew.jar。希望这可以帮助。


我最近经常遇到这个问题,而且是随机的。一次有效,下次无效。我正在使用NetBeans(以防万一),并且在build.xml中添加了许多额外的任务。我在-post-jar任务中遇到了这个问题。当我在文件上调用unjar然后删除时,就会发生这种情况。我怀疑NB正在尝试扫描jar,这会导致其锁定。

对我有用的是立即在-post-jar的开头重命名jar并向其中添加.tmp扩展名。然后,我在临时文件上调用unjar。完成后,我重命名回所需的jar名称。


如果您安装了git

在git bash shell中打开目录(从头开始搜索git bash)。 然后键入bash命令以删除文件
喜欢

1
rm -r filename.xyz


推荐阅读

    linux操作命令重命名?

    linux操作命令重命名?,图片,软件,名称,名字,文件,命令,状态,代码,工具,系统,L

    linux复制命令文件?

    linux复制命令文件?,系统,文件,命令,目录,基本知识,源文件,目标,文件夹,路

    linux下文件均分命令?

    linux下文件均分命令?,管理,情况,系统,工作,信息,地址,命令,目录,单位,设备,L

    linux执行c程序命令?

    linux执行c程序命令?,系统,工作,工具,信息,代码,命令,文件,保险,管理,环境,li

    linux拼接文件命令?

    linux拼接文件命令?,文件,数据,命令,代码,时间,信息,系统,情况,管理,标准,Lin

    linux里的操作命令?

    linux里的操作命令?,工作,系统,信息,地址,命令,标准,位置,目录,功能,操作,lin

    linux文件常用命令?

    linux文件常用命令?,工作,地址,信息,系统,命令,目录,标准,情况,管理,常用命

    linux命令行执行成功?

    linux命令行执行成功?,系统,信息,状态,服务,管理,百度,设计,灵活,代码,命令,L

    安卓执行linux命令行?

    安卓执行linux命令行?,系统,设备,基础,发展,标准,情况,信息,电话,号码,工具,

    文件写入linux命令?

    文件写入linux命令?,文件,命令,状态,系统,名称,时间,首次,数据,数字,内容,在l

    c执行在linux命令?

    c执行在linux命令?,系统,环境,保险,工具,代码,命令,程序,文件,终端,语言,如何

    linux命令写满文件?

    linux命令写满文件?,地址,工作,命令,系统,管理,文件,目录,标准,电脑,信息,Lin

    文件夹排序linux命令?

    文件夹排序linux命令?,系统,数字,信息,工作,时间,命令,管理,设备,单位,工具,

    linux分辨率操作命令?

    linux分辨率操作命令?,系统,情况,分辨率,底部,状态,命令,屏幕,屏幕分辨率,

    linux打开文件夹命令?

    linux打开文件夹命令?,工作,系统,信息,命令,图片,文件,管理,发行,名字,名称,

    linux执行中退出命令?

    linux执行中退出命令?,档案,状态,命令,分析,数据,电脑,实时,系统,工具,编辑,l

    linux上清空文件命令?

    linux上清空文件命令?,系统,命令,文件夹,名字,档案,文件,目录,方法,终端,指

    linux中历史命令文件?

    linux中历史命令文件?,系统,地址,信息,数字,时间,命令,数据,环境,历史,文件,l

    linux授权命令执行?

    linux授权命令执行?,系统,工作,数字,权限,文件,概念,标准,命令,目录,用户,在L

    linux定时执行命令?

    linux定时执行命令?,时间,系统,服务,任务,工作,标准,情况,周期性,工具,命令,l