Syntax error, parameterized types are only available if source level is 1.5 or greater问题解决及eclipse配置jdk版本的总结
错误发生的场景
代码如下,
问题分析:Syntax error, parameterized types are only available if source level is 1.5 or greater(语法错误,参数化类型仅在源级别为1.5或更高时可用),产生错误的原因,泛型是JDK1.5开始引入的概念,如果当前编译环境的版本小于1.5则会报此编译错误。
错误解决方法
通过项目右键–>Properties–>java Compiler,我们发现当前项目是使用jdk1.4编译的,版本太低不支持泛型,所以引起代码编译不通过,解决方法很简单,在上图设置complier compliance level为1.5或以上版本即可。
为什么需要学会eclipse配置jdk版本信息
jdk可以对项目提供开发环境和提供项目运行环境(jre)。使用eclipse开发项目时,就需要为所在项目配置jdk信息,从而确定代码的编译版本和运行版本。
编译版本配置不对,就引起是上述Syntax error, parameterized types are only available if source level is 1.5 or greater错误。
编译版本和运行版本要匹配,原则是低版本的运行环境不能执行高版本jdk开发的项目,即不向上兼容。否则我们会遇到的Unsupported major.minor version 51.0等错误,关于这个错误的解决和major.minor version的含义下次再讲。
eclipse配置jdk版本的总结
如上图,我们发现配置jdk涉及到build path 、 java complier、 installed JRE几个地方,如何配置我们继续往下看。
项目编译版本的配置:(针对此项目的版本)
点击项目右键–>Properties–>java Compiler 选择complier compliance level,其中有1.2,1.3,1.4,1.5等版本型号可供选择。
开发工作空间的编译版本配置:(代表的是工作区默认的版本)
Window---->preferences---->java----->compiler Compilercompliance level
项目运行环境版本的配置:
点击项目右键–>Properties–>java build path,在Libraries中可以 修改JRE的版本。
eclipse配置项目可用的jdk位置:(作用是将eclipse运行和本机已有的jdk关联起来)
Window---->preferences---->java----->installed JRE
本文总结
通过一个编译问题我们认识到jdk版本的选择很重要,同时对eclipse的jdk配置有了更多了解。总体来说比较简单,适合于java新手参考。