如果阁下看到了这篇文章,估计你已经碰到了这样的困那。当你看似正确的代码(应该是初次碰到类似的代码吧,这些大多数菜籽教材或者网络) 经过一番霹雳啪啦的敲键盘之后,怀着满心的兴奋运行,却被弹出can't find the main class 等等类似的对话框,看eclipse控制台的输出信息上显示着一两行红字java.lang.NoClassDefFoundError: org/eclipse/core/runtime/IProgressMonitor
Exception in thread "main" (或者类似)。那么我要先说,继续读下去,你的问题基本上可以在这里解决了。
阁下也许会奇怪明明已经把org/eclipse/core/runtime这个包加入到library里了,为什么还是报这样的错误,细心的通知可能就会发现你所加入的包里面根本就没有控制台所弹出的那个类,那牛就要奇怪了,eclispe在搞什么鬼东西呢?
其实呢,很简单org/eclipse/core/runtime这个包不是封装在一个jar包之下的,他们是属于两个项目的(我想可以这么解释吧)。就像你可以见两个工程A1,A2,他们的包路径相同,例如:com.binary.*; 。这时,也许别人在叫你如何些代码的时候,仅仅告诉你要导入A1这个工程,而A2这个工程却根本未曾提及,而事实是你不但需要A1这个工程,而且需要A2这个工程,好了我想大家都明白了吧,具体eclipse为什么要这么分,我在网上没有这道类似的解释,因此希望eclipse能给个说明出来。
哈哈,好了,我想大家等级了,其实这些缺少的类在org.eclipse.equinox.common里面,好了,大家去试试吧,赶快行动。