在这里完成 Java 编译的新手。想建filebot供个人使用。
设置
我正在使用的构建脚本来自 here :
@echo off
cd /D %~dp0
set PATH=%WIX%\bin;%PATH%
if not defined JAVA_HOME (set JAVA_HOME=C:\Program Files\Java\jdk-9.0.4)
echo Downloading dependencies...
call ant resolve
echo:
echo Compiling...
call ant fatjar
echo:
echo Building MSI installer...
call ant msi
if not defined WORKSPACE pause
我已经安装了 WiX 工具集、Apache Ant、Apache Ivy 和 JDK 9.0.4(因为原始文件机器人已停止使用 JDK 8)。将 Ant/bin 文件夹添加到用户路径,并将 ivy.jar 复制到该文件夹。同时将 JAVA_HOME 设置为 jdk 文件夹。
值得注意的是,我之前有jre9.0.4,并在其上安装了jdk。经过一些谷歌搜索,发现 jre 也将一些文件复制到 System32 文件夹,补救措施是将 jdk/bin 文件夹作为 Path 变量中最顶层的条目。但这并没有解决错误。
错误
我面临的主要问题是,在下载依赖项之后,在编译阶段,我得到以下输出:
[javac] Compiling 395 source files to D:\Misc\filebot\build
[javac] javac: release version 10 not supported // I believe this is the culprit
[javac] Usage: javac <options> <source files>
[javac] use --help for a list of possible options
BUILD FAILED
在此之后,msi 构建也失败了。相关的 build.xml
部分是:
<javac srcdir="${dir.source}" destdir="${dir.build}" release="${jvm.version}" encoding="utf-8" debug="yes" debuglevel="lines,vars,source" includeAntRuntime="no">
<classpath>
<fileset dir="${dir.dist}/lib" />
</classpath>
</javac>
我在 Google 上找不到关于 version 10 not supported
部分的任何相关信息,也没有安装 jdk 10。
javac -version
给出 javac 9.0.4
我是 Java 编译的新手,可能漏掉了一些微不足道的东西。 TIA:)
最佳答案
正如我所想,我错过了一些微不足道的事情。 filebot 已移至 jdk 10,这就是我尝试使用 jdk 9 进行编译时显示错误的原因。
因此,对于遇到类似问题的任何人,请确保您正在构建的源代码的目标 JDK 与您的开发工具包版本相同。
关于java - "javac: release version 10 not supported"编译期间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49462060/