【问题标题】:"javac: release version 10 not supported" during compile编译期间的“javac:不支持版本 10”
【发布时间】:2018-03-24 06:49:11
【问题描述】:

在这里完成对 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 Toolset、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 文件夹作为路径变量中的最顶层条目。但这并没有解决错误。

错误

我面临的主要问题是,在下载依赖项后,在编译阶段,我得到以下输出:

[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 -versionjavac 9.0.4

我对 Java 编译非常陌生,可能错过了一些琐碎的事情。 TIA :)

【问题讨论】:

    标签: java compiler-errors javac


    【解决方案1】:

    正如我所想,我错过了一些微不足道的事情。 filebot 已移至 jdk 10,这就是我尝试使用 jdk 9 编译时显示错误的原因。

    因此,对于面临类似问题的任何人,请确保您正在构建的源代码的目标 JDK 与您的开发工具包版本相同。

    【讨论】:

    • 请详细说明“源的目标jdk” - 我如何找出这是什么?
    • @notacorn 从字面上看,错误显示目标 jdk:version xyz not supported。你需要在你的系统中安装那个JDK版本xyz
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-27
    • 1970-01-01
    • 2020-01-17
    • 1970-01-01
    相关资源
    最近更新 更多