运维开发网

如何在jRuby编写的Java程序中执行自定义退出状态?

运维开发网 https://www.qedev.com 2020-07-07 10:01 出处:网络 作者:运维开发网整理
我正在研究验证工具的通用基础,我希望将其作为JAR分发并使用Ant自动化.单独使用 Java,我可以做类似的事情 ... int validationResults = this.validate(); System.exit(validationResults) // via Ant: 1 = "BUILD FAILED", 0 = "BUILD SUCCESSFUL" ... 使用CI系统在预
我正在研究验证工具的通用基础,我希望将其作为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.

扫码领视频副本.gif

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号