腳本提供了here一個偉大的方式,如果螞蟻是用Java 6面向未來的Java版本檢查
<?xml version="1.0" encoding="UTF-8"?>
<project name="project" default="default">
<target name="default" depends="javaCheck" if="isJava6">
<echo message="Hello, World!" />
</target>
<target name="javaCheck">
<echo message="ant.java.version=${ant.java.version}" />
<condition property="isJava6">
<equals arg1="${ant.java.version}" arg2="1.6" />
</condition>
</target>
</project>
不過來檢查,我有充分的理由認爲,未來人拿着我的位置可能不是Java程序員,我想確保構建不因Java 7而失敗。是否有任何方法可以挑選字符串或以其他方式請求Java 6或更高版本?
什麼是你需要知道你的腳本中的JVM層次的原因? – 2010-03-29 05:30:51
我試圖防範在Mac 10.5上的Java 5 javac。該javac不知道Java 6庫。 Ant中的任務沒有提供指定所需版本的方法,但缺少使用並給出了bin的確切路徑。 標籤只處理兼容性;它不會讓一箇舊的javaroot中的javac意識到其他一些javaroot中的jre庫。 –
2010-03-29 06:23:32
底線:我需要編譯一個使用新Desktop類的程序,並且我希望腳本在Java不打斷時警告人們。這樣他們不會混淆關於未知符號的編譯器錯誤。 – 2010-03-29 06:24:46