eclipse build path与java Compiler


在eclipse中开发的项目有个java build path中可以配置的jdk,还有个java compiler中可以配置compiler level,这两个是有区别的,java compiler level的JDK版本是你在eclipse中开发代码,给你提示报错的和将java文件编译成class文件需要用到的版本;build path中版本号的作用是指明你将来运行的环境。

如果build path的版本低于compiler版本,则会报 Unsupported major.minor version 51.0(高版本的版本号,以jdk7为例)。

网上大部分文章说java compiler level和build path的作用与本人的不同。在他们的说明下,我在eclipse尝试过将compiler level设置成1.6,build path 设置成1.7,编写以下程序:

public class Test {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        long test = 1234_5678_9012_3456L;  //jdk7新语法
        System.out.println(test);
    }

}

结果程序无法编译成功,eclipse提示错误,强制运行报以下错误

Exception in thread "main" java.lang.Error: Unresolved compilation problem: 
    Underscores can only be used with source level 1.7 or greater

    at Test.main(Test.java:6)

即使将系统的java home设置成jdk7,用java命令跑也是报上述错误。

 

如果将compiler level设置成1.7,build path 设置成1.6,则eclipse不会报编写错误,但是run后,则会报Unsupported major.minor version 51.0错误。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM