0

我有一个构建可执行 JAR 文件的 Ant 任务,运行一些 JUnit 测试,然后运行可执行 JAR 文件以查看它是否正确构建。但是,问题是我必须在我的计算机旁边才能关闭我的 Java 程序。有没有办法在它运行几秒钟后从 Ant 中关闭它?

<target name="buildAndTest" depends="create-submission-jar">
    <!-- Other stuff happening here -->
    <java fork="true" jar="${jar.executable}" failonerror="true" />
</target>
4

1 回答 1

1

您的应用程序可能是线程化的并且具有主循环的概念。我认为更简单的方法是让您的应用程序接受一个额外的参数,例如--timeout=120s,并使用此参数来Timer优雅地结束主循环(我认为您将拥有某种控制变量、PID 文件或任何东西)。然后 Ant 将传递这个额外的参数,因此在一段时间后该过程自行结束。

显然,如果没有设置参数,则Timer根本不会创建,您将使用常规方式告诉程序停止。

于 2012-09-15T21:13:32.980 回答