我有一个构建和执行Java程序的Ant构建文件。执行是使用fork=true
完成的,但这会导致程序的控制台输出被随机截断。我尝试在最后添加一个额外的System.out.flush()
,但它仍然会被截断。
我想要fork=true
,因为当程序使用System.exit(1)
报告错误时,它会更容易。
我在Windows上运行,如果这很重要的话。 ant中java任务的fork=true
选项是否适用于Windows?如果我想查看所有输出,是否需要登录文件?我可以告诉Ant等待分叉过程完成吗?
更新
如果我不使用fork=true
而我使用System.exit(1)
,那么我会在蚂蚁中得到这样的例外:
[java] Unexpected internal compiler error: org.apache.tools.ant.ExitException: Permission ("java.lang.RuntimePermis
sion" "exitVM") was not granted.
[java] org.apache.tools.ant.ExitException: Permission ("java.lang.RuntimePermission" "exitVM") was not granted.
[java] at org.apache.tools.ant.types.Permissions$MySM.checkExit(Permissions.java:194)
[java] at java.lang.Runtime.exit(Runtime.java:107)
[java] at java.lang.System.exit(System.java:971)
...