Multiple markers at this line
- The type java.io.ObjectInputStream cannot be resolved. It is indirectly referenced from
required .class files
- The type java.io.ObjectInputStream cannot be resolved. It is indirectly referenced from
required .class files
这个错误出现的环境:
eclipse:Version: 3.6.2
JDK:1.8
代码如下,在第一行的package位置始终报这个编译错。
package Chapter04;
public class DevideByMinusException extends Exception {
/**
*
*/
private static final long serialVersionUID = 1L;
public DevideByMinusException(){
}
public DevideByMinusException(String message){
super(message);
}
}
百度了好久,也没有找到解决方法,原因大概是这样的。
1,jdk版本太新,而eclipse版本比较旧,eclipse本身就是java开发的,所以eclipse的编译器使用的jdk版本没有程序的jdk版本高,造成一些误报。(高版本的sdk中的类有变化,eclipse编译器识别不了(猜测))。
2,要解决的话,方法有两个
1)可以选用较低版本的sdk,比如我就用回1.6版本的sdk
window->preferences->Java->Installed JREs->Add 选择一个低版本的sdk目录
2)下载一个最新的eclipse,与1.8版本的sdk匹配
我用的第一种,因为我本机有低版本的sdk,这样代价低一点。