J2EE 问题:Could not find the main class. Program will exit 如何解决???

说明:环境变量已配置好了。----------------------------新建工程运行是没问题的。这个工程前几天是没问题的。最近整合项目,整合完毕后便有这个问题出... 说明:
环境变量已配置好了。
----------------------------
新建工程运行是没问题的。这个工程前几天是没问题的。最近整合项目,整合完毕后便有这个问题出现 不知什么原因!

哪位高手帮偶解决一下! 谢谢!
展开
 我来答
tson
2010-05-14 · TA获得超过595个赞
知道答主
回答量:153
采纳率:0%
帮助的人:0
展开全部
起初你或许会认为是一个莫名其妙的错误,因为代码根本一点问题的都没有,可运行期间总是报这个错,比较郁闷。
出现Could not find the main class.program will exit和java.lang.UnsupportedClassVersionError 错误的原因,是因为我们使用高版本的JDK编译的Java class文件试图在较低版本的JVM上运行,所报的错误。
因为,高版本的JDK生成的class文件使用的格式,可能与低版本的JDK的.class文件格式不同。这样,低版本的JVM无法解释执行这个.class文件,会抛出Could not find the main class.program will exit,java.lang.UnsupportedClassVersionError不支持的Class版本错误。
这个错误尤其在JDK5与JDK5之前的版本上表现明显。因为,JDK5在Java语法上作了不少增强,引入了一些新的.class文件的元素,导致旧版本的JVM无法解释、执行.class文件。即使这个类并没有使用任何JDK5的新元素,但是JDK5生成的.class文件,JDK1.4及其以前的JVM都无法辨认!

在MyEclipse-->应用服务器下,指定Tomcat5。指定Tomcat使用jdk1.4。这样,就全部指定使用Jdk1.4来编译和运行程序了。如果全部指定jdk5也是可以的。但是,绝对不能够使用jdk5编译程序,而又在jdk1.4上运行程序,那样将会抛出java.lang.UnsupportedClassVersionError不支持的Class版本错误。
这种情况下,不论是Eclipse生成的war包,还是ant文件生成war包,都使用jdk5编译,就会在运行时出现错误,该应用程序将无法启动。如果你查看Tomcat的日志文件,将会看到正是java.lang.UnsupportedClassVersionError错误发生了!

其实无非就是版本问题,JDK版本的问题。

解决方法:在Eclipse窗口-->首选项-->Java-->编译器-->JDK一致性-->编辑器一致性级别,从5.0改到1.4就可以了。
bmouth
2010-05-17 · TA获得超过910个赞
知道小有建树答主
回答量:152
采纳率:0%
帮助的人:0
展开全部
看看你工程属性->Java Build Path里面的Libraries中的jre设置有没问题,再看看preference->Java compiler的编译器版本设置有没有问题。有问题的话重新设置一下。

以前也遇过这个问题,就是楼上说的编译不了源程序造成的(你看看你的工程里面,是不是没有编译好的)。最后也就搞搞这些设置,刷新下工程,就可以了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友5ca104357
2010-05-16 · TA获得超过2595个赞
知道小有建树答主
回答量:874
采纳率:100%
帮助的人:1357万
展开全部
不能编译的问题!
环境的问题,挺多原因的。
JRESystem 错误,jdk或jre不全
或者退出Eclipse试试!

参考资料: 还有其他问题的话,给我发百度消息

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友f683cf5
2010-05-14 · TA获得超过369个赞
知道小有建树答主
回答量:522
采纳率:0%
帮助的人:368万
展开全部
仔细检查你的工程还是不是web工程,若在整合过程中成了普通的java工程,那你运行时,编译器就会找main函数了,找不到就会报错。。另外你是以什么方式运行的,j2ee应该是部署好工程后,启动web服务器,按理说不会报这种错误。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
瞎起的名字不重要
2010-05-29 · TA获得超过634个赞
知道小有建树答主
回答量:132
采纳率:0%
帮助的人:84.1万
展开全部
应该是整合项目的时候,不同的人起得包名不同,仔细检查一下包名,把含有main方法的类里的包名改了就好
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式