如何在jRuby编写的Java程序中执行自定义退出状态?
作者:互联网
我正在研究验证工具的通用基础,我希望将其作为JAR分发并使用Ant自动化.单独使用Java,我可以做类似的事情
...
int validationResults = this.validate();
System.exit(validationResults) // via Ant: 1 = "BUILD FAILED", 0 = "BUILD SUCCESSFUL"
...
使用CI系统在预定构建中使用验证工具.
然而,我在jRuby而不是Java(用于学习)中写这个.我尝试了以下方法,但它们不会在Ant中触发“BUILD FAILED”.
java.lang.System.exit(1) # using "require 'java'" at the the top of the file
Kernel.exit 1
exit 1
我已经在jRuby问题跟踪器中看到了关于此的门票(例如JRUBY-1650),但我还没有找到解决问题的方法.
我正在运行jRuby v1.6.6和Warbler v1.3.2. Ant目标如下所示:
<target name="validate">
<java jar="./validator.jar" fork="true" />
</target>
是我做得不对,还是jRuby不支持这个(还)?
解决方法:
我想你从java
Ant task开始你的jRuby代码.
要在jRuby进程中出现非零退出代码时使Ant失败,必须将java任务的failonerror属性设置为true.
标签:java,ant,jruby 来源: https://codeday.me/bug/20190630/1334672.html