0
D2RQ附带一个ant
构建脚本,它工作正常。我可以在Linux机器上编译,其中默认ant版本是1.8.2,javac版本是1.7.0_121。用蚂蚁编译D2RQ
我想用Java 8编译D2RQ。我已经下载了ant 1.10,它需要Java 8 2。
然后,我遇到了一些问题:
当我运行蚂蚁1.10不改变源(或目标)选项,蚂蚁似乎已成功运行 - 尽管Java的系统上的默认版本1.7(即< 8) - 我会期望它抱怨它没有一个有效的Java版本?
我试着从
source="1.5" target="1.5"
修改build.xml文件中
compile
目标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标志。
还有什么我应该尝试?!
谢谢!我知道这会很简单! (你能告诉Java不是我喜欢的语言......) – ChrisW
虽然它仍然不回答我为什么'target =“1.8”'不起作用的问题,或者为什么蚂蚁1.10不会抱怨被在Java 1.5 – ChrisW
下运行时,如果正在使用'javac'可执行文件版本1.7或更早的版本''target =“1.8”'将不起作用。 –