2017-04-11 18 views
2

1つはJava8で動作し、もう1つはJava7で動作する別のプロジェクトを実行したい。私は私のMacに最新のantバージョン1.10をインストールしました。私はjava7にJAVA_HOMEを設定した場合、蟻実行は同じマシンに複数のバージョンのantをインストールする

Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/tools/ant/launch/Launcher : Unsupported major.minor version 52.0

(Java7でのAnt 1.9の実行)で失敗し

+0

jenvを参照するか、正確な場所を指します。 – Eugene

+0

私はsdkmanツールを評価することを提案します。複数のバージョンのJavaとANTをインストールすることができます。参照:http://sdkman.io/もう一つの合法的なオプションは、仮想マシン内でビルドを実行するためにvirualboxのような仮想化ソフトウェアをインストールし、最後に常にDocker –

答えて

2

Antのhome pageによると:

The Apache Ant team currently maintains two lines of development. The 1.9.x releases require Java5 at runtime and 1.10.x requires Java8 at runtime.

だから、JDKにJAVA_HOMEを設定する必要がありますAnt 1.10を実行するためには、8が必要です。しかしこれはAntだけを実行することです。これはあなたのプロジェクトとは関係ありません。つまり、2つの異なるJavaバージョンを使用する2つのプロジェクトをコンパイルするために複数のバージョンのAntを使用する必要はありません。 Ant 1.10.xは両方のプロジェクトで使用できます。ビルドファイル内のタスク内からJavaバージョンを制御します。たとえば、javacタスクは、異なるJDKバージョンを使用したコンパイルをサポートしています。

<javac srcdir="${src}" 
    destdir="${build}" 
    classpath="xyz.jar" 
    debug="on" 
    source="1.4" 
/> 
関連する問題