eclipse ant 构建失败无法删除文件 lib\build

标签 eclipse ant ivy

运行某些 build.xml 目标时,clean 在删除 ivy jar 目录时有时会出现问题。 “锁定”文件是由 Eclipse 执行的,在目录上使用资源管理器或从 Eclipse 重新运行 ant 拒绝删除它,直到重新启动 Eclipse。这是非常耗时的。 由于某些原因,Eclipse 在运行 ant build/clean 后仍保留此文件。
并不是所有的项目都是这样,只是在某些时候出于未知的原因。

现有讨论。 Eclipse won't delete files

但它并没有回答我关于如何让 Eclipse 运行 ant 而不必每次都重新启动的问题。

有没有办法使用 eclipse -console 来查看文件处理持有它的内容?或者有人知道为什么 eclipse/ant/ivy 在构建一两次后不会放弃这些目标的根本原因(在 Eclipse 重新启动后第一次工作正常),但随后的一些 ant 构建之后它变得不高兴。

就我而言,是 eclipse 肯定锁定了文件。 重新启动 Eclipse 不是一个解决方案。否则,我将返回命令行窗口。我尝试过在同一个 jvm 中设置运行以及各种设置。

我需要调试 Eclipse 插件吗?有没有更简单的方法来找出 Eclipse 及其插件中没有释放锁定的内容?这是我第一次看到这种情况,我怀疑这是 IVY 造成的。

运行juno、ivy、spring、ant,并且在从Eclipse运行Ant Build时遇到问题,clean无法删除工件的lib/build目录。

eclipse.buildId=M20130204-1200
java.version=1.6.0_43
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
Framework arguments:  -product org.eclipse.epp.package.jee.product
Command-line arguments:  -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.jee.product

!ENTRY org.apache.ivyde.eclipse 1 0 2013-06-04 11:36:50.344 
!MESSAGE starting IvyDE plugin

Ant 目标:

    <target name="clean-retrieved" >
    <delete includeemptydirs="true" >
            <fileset dir="${basedir}">
                <include name="lib/**" />
            </fileset>
    </delete>
</target>

错误:

clean-retrieved:

BUILD FAILED
C:\scripts\common-build-targets.xml:238: Unable to delete file C:\scripts\lib\build\annotations-1.3.8.jar <<just first jar file in directory..

最佳答案

当进程正在使用所述文件时会发生这种情况。当使用所述 jar 的程序仍在运行时,我通常会遇到此问题。验证您是否仍在 Eclipse 中运行您的程序。直观地看到这一点的最简单方法是查看以下内容:

enter image description here

启用红色方 block (停止按钮)意味着您的程序仍在运行。如果你按下它,你就会停止你的进程。但是,如果您的程序没有运行,它会看起来像这样:

enter image description here

由于“停止”按钮未启用,这意味着程序没有运行。但是,除了当时显示的进程之外,可能还有其他进程也在运行。要看到这一点,您可以在下一个屏幕截图中看到一个“计算机屏幕”图标:

enter image description here

计算机屏幕被启用表示您已经运行了多个程序/进程。单击向下箭头可以更改为其他程序。检查它们是否正在运行,并停止它们。更简单的方法是按双 X 符号。这将关闭与已完成流程相关的每个部分,并可能会向您显示仍在运行的部分,您可以停止。继续按双 x 和停止按钮,直到所有按钮都消失,您应该能够删除您的 jar,并毫无问题地构建。

关于eclipse ant 构建失败无法删除文件 lib\build,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16945441/

相关文章:

Apache Ant : Is it possible to insert/replace with text from a raw text file?

java - 将 ant 文件集回显到屏幕以进行调试

java - 在构建时动态添加 ant 插件?

android - 当我将非资源 PNG 文件添加到 Android 项目时,Eclipse 给出 "invalid resource directory name"

c++ - 调试器在 Eclipse 中找不到源文件

java - .execute 无法解析为类型 - AsyncTask (Android)

java - 如何在用 jRuby 编写的 Java 程序中自定义退出状态?

Java 异常堆栈被抑制 - 如何打印出整个堆栈?

java - Eclipse Luna - 导入后项目资源管理器为空

gradle - 使用gradle下载ivy jar,但是jar名错误