为什么Ant给我一个不支持的major.minor版本错误

cod*_*der 43 java eclipse ant

我在Ant中运行这个目标.

<target name="compile" depends="init"
    description="compile the source " >
    <!-- Compile the java code from ${src} into ${build} -->
    <javac srcdir="${src}" destdir="${build}"/>
</target>
Run Code Online (Sandbox Code Playgroud)

它给了我这个错误.

C:\Users\..\workspace\..\build.xml:21: java.lang.UnsupportedClassVersionError: 
    com/sun/tools/javac/Main : Unsupported major.minor version 51.0

以下是版本:

Apache Ant(TM) version 1.8.2

JDK version is JDK 1.7.0
Run Code Online (Sandbox Code Playgroud)

这是我在Eclipse中的编译器设置.

在此输入图像描述

请帮我解决一下.

abk*_*srv 35

检查编译期间使用的tools.jar是否符合JRE集.如果您使用的是eclipse,请将版本验证为:
转到窗口 - >首选项
- 通过在左窗格中选择Ant下的运行时来检查Ant运行时.检查类路径选项卡下的全局条目.您可以在文件夹路径中看到该版本.
- 在左侧窗格中,检查Java下安装的JRE.检查版本.
当我选择的JRE是1.6.0_24并且Ant运行时的tools.jar来自jdk 1.7时,我也遇到了同样的问题.如果它们都来自不同的版本 - 1.6/1.7,请通过纠正它们的路径来纠正它们.通常,tools.jar可以在以下位置找到:C:\ Program Files\Java\jdk1.xx\lib.同样,如果需要,通过将JRE指向C:\ Program Files\Java\jdk1.xx来添加JRE


cod*_*der 27

运行时jre在构建配置窗口中设置为jre 6而不是jre 7.

  • 顺便说一句,因为它是v6和v7配置错误的问题,为什么报告不支持的版本号的错误消息是5/1.0? (3认同)
  • 因为51.0是Java 7 :) (3认同)

小智 16

  1. 检查是否在路径"C:\ Program Files\Java"中 安装了jdk如果没有在您的计算机中安装JDK

  2. 在Eclipse中,右键单击"build.xml",然后选择Run As> External Tools Configuration

  3. 单击" JRE "选项卡,然后单击"已安装的JRE">"添加">"标准VM">单击"下一步"

  4. 选择目录"C:\ Program Files\Java\jdk1.7.x_xx",该目录将添加到"已安装的jres"中

  5. 选择新的JDK目录并单击"确定"

  6. 单击"Seperate JRE"下拉列表并选择JDK版本"jdk1.7.x_xx "并单击" 运行 "

这会有所帮助:)


Nic*_*zyk 9

您需要说出哪个版本的Ant和哪个JVM版本.

您可以运行ant -v以查看Ant 根据文档使用的设置

Ant 1.8*需要 JDK 1.4或更高版本.

'Unsupported major.minor版本51.0'意味着某个代码是为JDK版本编译的,并且您尝试在旧版本的JDK下运行这些类.(见这里)