当我从Eclipse 3.4.x启动一个ant脚本时,它会将输出打印到控制台,直到某个阶段。之后它经常挂起(永远等待)。我在屏幕(控制台)看到的最后一行 - 我的混淆器的部分输出。
在Eclipse 3.3.2下,一切正常(相同的项目,工作空间,设置,JVM等)。
有人有同样的问题吗?有任何想法如何解决它?
答案 0 :(得分:3)
我也可以在Eclipse 3.6和Ant 1.7.1中看到这种现象。在我的情况下,我必须将外部工具配置(菜单运行 - >外部工具)中的JRE设置为“在与工作区相同的JRE中运行”,然后它可以正常工作。
答案 1 :(得分:2)
我正在使用Eclipse 3.4.2并且ant任务挂起,ant输出只进入控制台一定程度,之后没有任何工作。
我查看了控制台的最后一行,发现了一些与UTF-8相关的问题。
这是消息(警告:编码UTF8的不可映射的字符)。
转到外部工具。选择ant任务,单击“Common Tab”,将编码从默认值(UTF-8)更改为ISO-8859-1。
答案 2 :(得分:1)
您是否限制了控制台可以分配的内存?菜单“窗口” - >偏好 - >运行/调试 - >控制台。
选择“限制控制台输出” 将“控制台缓冲区大小(字符)”设置为200000。
您看到的效果可能与垃圾收集有关:控制台耗尽了太多RAM,GC开始吃掉所有可用的CPU周期来清理。
答案 3 :(得分:1)
我们遇到了类似的问题,我们无法通过升级到最新的Eclipse版本来解决这个问题。过了一段时间,我们发现它是由一个特殊的角色(德语Umlautü)写入控制台的任务造成的。将字符更改为“ue”后,一切正常。
我想这个角色不知何故杀死了“从ant中获取字符并将它们写入控制台”线程。 Ant继续将字符写入通信管道,最后将其填满并永久阻止。
答案 4 :(得分:0)
一个可能的原因是你是running out of memory
还尝试使用-diagnostics
选项运行ant。
您可以查看memory usage和eclipse.ini。
另一个经典罪魁祸首是阻止访问锁定资源(比如访问已被其他进程使用的文件):尝试关闭许多应用程序,然后重新启动ant。
答案 5 :(得分:0)
您是否检查过Eclipse 3.4发行说明中的known issues for Ant?
答案 6 :(得分:0)
您可以使用Eclipse调试器运行ant build,这可能有助于找出问题。
答案 7 :(得分:0)
刚才发生在我身上。我需要擦除与Ant相关的所有外部工具配置(菜单运行 - >外部工具),将默认JRE设置为1.6并重新启动Eclipse。然后我的任务奏效了。
答案 8 :(得分:0)
看起来Eclipse 3.4.x中的ant实现部分被破坏(与Eclipse 3.4和3.4.1相关)。几天前在Ant任务(dbunit)中遇到了OOM。没有Eclipse,ant任务工作正常(测试bot ant 1.6.5和1.7.0)。
希望3.5和3.4.2解决蚂蚁实现的不可预测的行为。
答案 9 :(得分:0)
看起来大多数ant问题都是在Eclipse 3.4.2
下解决的