Ant Javac目标使用Eclipse中的不同JRE? - "java.lang.UnsupportedClassVersionError:不支持的major.minor版本51.0"

Pau*_*aul 2 java eclipse ant

我正在尝试使用Ant脚本来构建我的Vaadin 6项目.当我手动构建和部署项目时,它(主要)工作,但是当我使用ant脚本时,我得到编译时错误.

我的蚂蚁目标看起来像这样:

<target name="build" depends="copyconfig" description="Compiles Java code to build directory">
    <javac destdir="build" includeantruntime="false"> <!-- Error here --> 
        <src path="src" />
        <src path="generated" />
        <src path="config" />
        <exclude name="**/*_Ex??.java" />
        <classpath refid="compile.classpath" />
    </javac>
</target>
Run Code Online (Sandbox Code Playgroud)

在日食中:windows-> preferences -> Java -> Installed JREs我指出:jdk1.7.0_03.在windows -> preferences -> Java -> Compiler我设定compiler complience level: 1.7

当我构建通过Project->Build project我没有错误,但当我通过ant脚本构建时,我得到: C:\vaadinSpikeWorkspace\DocumentManager\build.xml:55: java.lang.UnsupportedClassVersionError: com/sun/tools/javac/Main : Unsupported major.minor version 51.0

我假设我的蚂蚁脚本使用的是不同版本的编译器,这就是导致问题的原因(当我通过eclipse手动编译时不会出现这些问题).

但是,我认为JRE是向后兼容的:即如果我使用最新版本的JRE(1.7),我不应该遇到不同编译器版本的问题?

我们非常感谢您提供的任何帮助.

Kar*_*amy 8

在Eclipse Run - > External Tools - > External Tools Configurations - > Ant.build中查看Jre版本.