82

jdk 1.5 と jdk 1.8 の 2 つの jdk をインストールしました。次の Ant build.xml 構成ファイルがあります。

<target name="compileCustomSrc">
    <javac srcdir="src" destdir="build/classes" source="1.5" target="1.5" >
        <classpath>
            <fileset dir="C:/lib/">
                <include name="*.jar" />
            </fileset>
        </classpath>
    </javac>
</target>

jdk1.8 をインストールする前に、Eclipse から呼び出された Ant はすべてのソースを正常にコンパイルしました。しかし今、私は次のエラーメッセージを持っています:

クラスが見つかりません: javac1.8

私の JAVA_HOME と JRE_HOME:

JAVA_HOME = C:\Program Files (x86)\Java\jdk1.5.0_16
JRE_HOME = C:\Program Files (x86)\Java\jre1.5.0_16

Eclipse JREで1.5に設定します。Java 1.8 は、インストール中にいくつかの構成を設定しますか?

4

13 に答える 13

14

Kristian Holdhus の回答 (正しいとマークされています) の続きとして、代わりにAnt javac taskcompilerの属性を使用できます。設定は、後方互換性 (1.3 までさかのぼる) と前方互換性の両方を備えている必要があります。compiler="modern"

これにより、 という名前の Java システム プロパティを設定する必要がなくなりますbuild.compilercompilerタスクに属性を明示的に設定しない場合にのみ、javacAnt は の値をbuild.compilerフォールバックとして使用します。

于 2015-01-28T20:28:47.893 に答える
7

これと同じ問題がありました。JAVA_HOME と JRE_HOME を正しく設定しました。Ant > 1.9 もありました。

それを修正するために私がしたことは、Eclipse から Window -> Preferences に移動することです。Ant を展開し、ランタイムを選択します。デフォルトでは Classpath タブが選択され、右側に「Ant Home」というボタンがあります。このボタンをクリックして、Ant フォルダーを指していることを再確認します。

于 2014-10-24T18:31:34.260 に答える
3
JAVA_HOME = C:\Program Files (x86)\Java\jdk1.5.0_16
JRE_HOME = C:\Program Files (x86)\Java\jre1.5.0_16

JAVA_HOME と JRE_HOME は Java 1.5 インストールに設定されているため、1.8 バイナリ (などjavac) は見つかりません。それらをJava 1.8インストールに設定すれば、問題ありません。

于 2013-12-20T11:28:12.127 に答える
0

Ant を 1.9.x リリースに更新します。これは、Java 8 が 1.9 より前の Ant バージョンと互換性がないため、またはコマンド put -Dbuild.compiler=javac1.7 の後です。以下を参照してください。

ant リリース -Dbuild.compiler=javac1.7

于 2015-12-03T17:10:55.703 に答える