环境是Ubantu16.4 ,开发基于Eclipse3.8。需要在Eclipse上run一个Mapreduce的词频统计(WordCount)程序,Eclipse针对我的代码报错如图1所示。我在网上查找了很多博客,给出的解决方案大多和ClassPath相关,需要在系统配置中修改ClassPath的配置,有的博客还介绍了Path与ClassPath是什么,区别是什么,这还间接让我学习到了Path和ClassPath的知识。但是遗憾的是,他们给出的解决方案不适合我,于是我自己试着从具体报错信息下手,最终解决了问题。
Ubantu中Eclipse报错Could not find or load main class解决方案

图1. 报错截图

如图2所示,我们可以看到有红色小叉(×);把鼠标移到每个小叉处,就能显示出具体报错信息,如图3所示。
Ubantu中Eclipse报错Could not find or load main class解决方案
图2. 小红叉

如下图3所示,它告诉此处参数的类型至少需要source level至少要1.5。
Ubantu中Eclipse报错Could not find or load main class解决方案
图3. 具体语法错误

如图4所示,现在我们开始修改source level(编译器版本),首先将鼠标移动到project文件夹出,鼠标右键,在出现的选择栏处选择“Build Path”,继续在新出现的选择栏出选择“Configure Build Path”。
Ubantu中Eclipse报错Could not find or load main class解决方案

图4. 进入修改配置处

接下来,如图5所示,选择“Java Compiler”(Java编译器),在右上角将原来的“1.4”调到“1.5”或以上
Ubantu中Eclipse报错Could not find or load main class解决方案

图5. 修改编译器版本

最终如图所示,程序成功运行。
Ubantu中Eclipse报错Could not find or load main class解决方案

相关文章: