写" java -version"到使用ant的文件

时间:2016-06-22 00:22:52

标签: ant

我想在我的脚本中有一个目标,它以文件格式记录用户的java版本。但由于某种原因输出到命令" java -version"无法录制。

我尝试在终端中运行java -version > java.txt,这也不起作用,所以我猜测无法捕获java -version的结果?

2 个答案:

答案 0 :(得分:3)

您可以在Ant exec中使用以下build.xml任务:

<exec executable="java">
    <arg value="-version"/>
    <redirector output="java-version.txt" alwayslog="true"/>
</exec>

答案 1 :(得分:1)

只需使用Ant内置属性,请参阅Ant Manual /内置属性,f.e。 :

<echoproperties prefix="java"/>

将打印所有Java属性 有3个版本相关的属性:

  1. java.version
  2. java.vm.specification.version
  3. java.vm.version
  4. 所以,只需采取适当的财产:

    <project>
    
     <echo>
      ${java.version}
      ${java.vm.specification.version}
      ${java.vm.version}
     </echo>
    
     <!-- assuming you want ${java.version} -->
     <echo file="foobar.txt">Java Version = ${java.version}</echo>
    
    </project>
    

    输出:

    [echo]   1.7.0_72
    [echo]   1.7
    [echo]   24.72-b04