2017-01-10 4 views
0

D2RQは、antビルドスクリプトと一緒に出荷され、正常に動作します。私は、デフォルトのantバージョンが1.8.2で、javacバージョンが1.7.0_121であるLinuxボックスでコンパイルすることができます。D2RQをantでコンパイル

Java 8でD2RQをコンパイルしたいのですが、Java 8が必要なant 1.10をダウンロードしました。2です。その後

私はいくつかの問題に遭遇:

  • 私は、ソース(またはターゲット)オプションを変更することなく、アリ1.10を実行して、アリが正常に実行するようだ - システムにJavaのデフォルトのバージョンがあるにもかかわらず、 1.7(すなわち< 8) - 私はそれがjavaの有効なバージョンを持っていないと不平を言うことを期待していたでしょうか?

  • 私は

    source="1.8" 
    target="1.8" 
    

    source="1.5" 
    target="1.5" 
    

    からbuild.xmlファイルのcompileターゲットを変更しようとしましたが、私はのエラーを取得:

    compile: 
        [javac] Compiling 171 source files to /home/chris/d2rq/bldsrc 
        [javac] javac: invalid target release: 1.8 
    

    私は'1.8'を '8'に置き換えても同じエラーが発生しますが、 '1.6'と '1.7'は両方とも動作します。

  • I次いで(もう少しグーグル後)別のアプローチを試みたと

    fork="yes" 
    executable="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-0.b15.el6_8.x86_64/jre/bin/java" 
    

    source="1.5" 
    target="1.5" 
    

    を交換するJava 8の位置が有効であるが、今コンパイルタスクを実行して結果

    compile: 
        [javac] Compiling 171 source files to /home/chris/d2rq/bldsrc 
        [javac] Unrecognized option: -d 
        [javac] Error: Could not create the Java Virtual Machine. 
        [javac] Error: A fatal exception has occurred. Program will exit. 
    
で10

-dがD2RQコンパイルオプションか有効なjavaフラグであるかどうかわかりません。

私は何か試してはならないことはありますか?

答えて

1

の属性がjavacで、javaではなく、の実行可能ファイルを指している必要があります。 javacの末尾にある"c"に注意してください。次

javacを指すように変更する必要があります。

executable="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-0.b15.el6_8.x86_64/jre/bin/java" 

どこjavacの生活は、あなたのLinuxディストリビューションに依存します。

+0

ありがとうございます!私はそれが何か簡単なことを知っていた! (あなたはJavaに私の好む言語ではないと言えますか?) – ChrisW

+0

'target =" 1.8 "'がうまくいかない理由、またはant 1.10がJava 1.5で実行する – ChrisW

+0

'target =" 1.8 "'は、バージョン1.6以上の 'javac'実行可能ファイルが使用されていても動作しません。 –

関連する問題