0

D2RQ附带一个ant构建脚本,可以正常工作。我可以在linux机器上编译,默认ant版本是1.8.2,javac版本是1.7.0_121。

我想用 Java 8 编译 D2RQ。我下载了需要 Java 8 2的 ant 1.10 。

然后我遇到了一些问题:

  • 当我在不更改源(或目标)选项的情况下运行 ant 1.10 时,ant 似乎运行成功——即使系统上 java 的默认版本是 1.7(即 <8)——我本以为它会抱怨它没有有有效的java版本吗?

  • 我尝试从以下位置修改compilebuild.xml 文件中的目标

    source="1.5"
    target="1.5"
    

    source="1.8"
    target="1.8"
    

    但我得到一个错误:

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

    如果我只用“8”替换“1.8”,我会得到同样的错误,但“1.6”和“1.7”都可以。

  • 然后我尝试了一种不同的方法(经过更多的谷歌搜索)并替换了

    source="1.5"
    target="1.5"
    

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

    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.
    

我什至不知道-d是 D2RQ 编译选项还是有效的 java 标志。

还有什么我应该尝试的吗?!

4

2 回答 2

1

executable属性<javac>必须指向javac可执行文件,而不是java. 注意"c"末尾的javac.

以下必须更改为指向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 发行版。

于 2017-01-10T20:42:38.303 回答
1

还有带有 java8、jena3 和 maven的 ONT- D2RQ

于 2019-01-14T10:27:17.590 回答