java程序执行报错:找不到主类
今天真的被自己蠢到了
在Hadoop平台上运行作业报错,提示找不到主类,竟然没有想到会是pom文件中指定了主类,还一直跟同事一起怀疑是大数据平台除了问题。
错误信息
[Scheduler]-2020-06-05 15:55:28-IndividualHalfYear_1565231376024->/************************ Job Start Running ****************************/
[Scheduler]-2020-06-05 15:55:28-IndividualHalfYear_1565231376024->Init Job Env…
[Scheduler]-2020-06-05 15:55:28-IndividualHalfYear_1565231376024->Running shell…
===start invoke out.sh
作业开始执行时间
2020年 06月 05日 星期五 15:55:28 CST
Exception in thread “main” java.lang.ClassNotFoundException: cn.com.wind.WindSearch.Hadoop.relation.IndexRelationEntityService
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at org.apache.hadoop.util.RunJar.run(RunJar.java:214)
at org.apache.hadoop.util.RunJar.main(RunJar.java:136)
end invoke main.sh=exit_code=1
[Scheduler]-2020-06-05 15:55:32-IndividualHalfYear_1565231376024->End shell command ret:1
[Scheduler]-2020-06-05 15:55:32-IndividualHalfYear_1565231376024->Job End State:Failed
[Scheduler]-2020-06-05 15:55:32-IndividualHalfYear_1565231376024->Updating Job log…
解决
最终竟然是pom中指定了主类,我浪费了一下午时间找原因,真是愚蠢至极,必须记录一下才行。