JDK7里Integer类型初始化为0报错

今天换了eclipse新版本kepler,配成jdk7的运行环境,结果原来的语句:Integer personId=0;居然报错了,提示初始化错误,要把Integer类型改成int型,以前用indigo版本,配jdk6的环境没问题,怀疑是不是jdk版本的问题呢,求各位大神解答,最好能把原理说清楚

2个回答

看看编译级别是不是没设成 5.0 (含)以上的

weixin_42298602
weixin_42298602 比如我机器装了jdk7,但是有个应用运行时是1.4.2。那么可以用jdk7进行编译,只要指定编译级别是1.4.2就好了,这时jdk5的特性就不支持,会发生编译错误。
6 年多之前 回复
hu_2009sdu
hu_2009sdu 谢谢,问题解决了,设成了1.6的编译级别后就不报错了,但是编译级别和JDK有啥关系呢,编译级别由什么决定的呢
6 年多之前 回复
weixin_42298602
weixin_42298602 要是也是7.0啊,编译级别跟jdk的级别不一样的。就是说你用jdk7也可以编译成1.4的,高版本特性就不支持。在工程点右键最下面Properties-->Java Compiler,右边会显示编译级别。
6 年多之前 回复
hu_2009sdu
hu_2009sdu 已经是1.7的了,还不行
6 年多之前 回复

个例问题。把eclipse关了重新开一下。
呵呵,开个玩笑。
多半是eclipse的bug
不过我开普勒用了很久了,5,6,7都跑过,没出现类似的问题。只能自己多试试吧。

chengshwu
chengshwu 运行的时候肯定是不会在eclipse中的,所以建议直接在tomcat中跑一下,看看会不会出现同样的问题
6 年多之前 回复
hu_2009sdu
hu_2009sdu 试过了,还是不行呢
6 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐