main方法执行方法时报错,但是通过tomcat部署之后用网页方法访问就没问题

main方法报的错误是类编译失败。jdk1.6.0_12myeclipse6.6,apache-tomcat-6.0.35,还需要别的环境信息吗?如何写的这个,不知道是想... main方法报的错误是类编译失败。
jdk1.6.0_12 myeclipse6.6, apache-tomcat-6.0.35,还需要别的环境信息吗?如何写的这个,不知道是想知道什么?我是直接在action中调用的main方法。@yangyu125 是直接执行main方法没有通过,报错了,然后部署到tomcat下面,通过action调的main方法,然后通过网页访问的action.

代码确实不好贴,太复杂了,里面各种调用,而只贴main方法的话,里面确实只有一个调用,没什么用。只贴一下错误信息吧。我之前不贴,是因为觉得没什么用。因为这个编译失败的类代码中是没有的,所以应该是框架生成的类,这个要解释就太麻烦了。因为我觉得应该是环境的问题,是希望见过这种问题的人帮忙指导一下,不是想那些连main方法怎么运行都不知道的人在那儿秀智商下限的。
展开
 我来答
典勇嘉谋
2014-04-08 · TA获得超过362个赞
知道小有建树答主
回答量:308
采纳率:100%
帮助的人:136万
展开全部
既然编译失败,肯定是JDK没配置好或者你类里面的某个字写错了。环境变量只要配置一个path就够了,指向jdk的bin目录。像这种情况楼主最好是把源码跟错误的代码贴出来。既然你在tomcat下可以运行,那么证明类是正确的,之前的JRE没编译好了,可能使用了低版本的JRE去编译高版本的类文件。
试试更换个JRE看看。
楼下的有个人说的那个我挺赞同的。按理说编译错误不应该是运行的时候报错,那应该是框架使用了反射对某个配置文件里面的类加载编译。而main方法没有能在classpath中找到配置文件中的类。那么试试把classpath配置成这样看看 .;配置文件中类的目录;
幸福生活有肉吃
2014-04-08 · TA获得超过122个赞
知道小有建树答主
回答量:168
采纳率:0%
帮助的人:133万
展开全部
...你这理解有点绕啊...
虽然说main是一般右键运行的程序入口,但放在web环境下,main 也就是一个类的一个方法罢了...
如果main里面涉及到了其他web的东西,没有部署启动服务器,怎么可能调的出来,不报错就有鬼了...
更多追问追答
追问
我说了啊,是先执行main方法,报错之后部署到tomcat下面的。执行main方法是在myeclipse里面做的。我天,你们难道都是通过文本文档写的程序么,没用过myeclipse和eclipse么?我在回复下面那个人的时候就说了啊,是直接右键,点run as java application,我没有说过,是在web环境下运行main方法。在web环境下是通过action调用main方法。
追答
哎,俗话说得好,要想学习新东西,脑袋里面的东西先倒掉比较好。
你这是完全抗拒其他思路的节奏啊....

直接右键运行main,只是在当前类从main入口进入程序,其他相关环境根本没有运作,当然要报错,在web里面用action 调用,环境已经运行起来了,调用main只是调用一个类的一个方法,并不是启动程序了...

带着固有的眼光看,理解完全偏向错误的方向了...我什么时候说你报错是在web下了?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
NoGrief
2014-04-08 · TA获得超过253个赞
知道小有建树答主
回答量:304
采纳率:100%
帮助的人:217万
展开全部
main方法的运行和在tomcat下运行是不太相同的,可能出现的问题就是类编译路径不同,导致目标地址错误,或者导致java文件无法找到。
具体的问题要看这个类里面的实现是什么了,以简单的异常来看,估计是要在运行时编译代码。。但是,编译失败了。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
歪瑞顾K
2014-04-08 · TA获得超过2905个赞
知道大有可为答主
回答量:2731
采纳率:33%
帮助的人:2184万
展开全部
部署到 tomcat下的web工程,是不会执行 main方法的。

很有意思 main方法怎么能自己去执行? 要不你就贴代码?你光说哪个晓得你啥问题?
追问
是在main方法所在的那个java类里,直接右键,然后点run as java application。然后就报了个类编译错误。
追答
没救!

在web项目里,执行main函数,是没有上下文的。就像同一份代码跑了两次。如果action里用到了某个对象,又再 main函数里去用这个对象,那他们是完全两个不同的对象,因为所属进程都不一样 web项目的进程属于 tomcat main的进程属于 javaw.exe

如果以为main函数启动了,就能拿到web项目运行时的状态信息,那就见鬼了。就算真要这养,牵涉到进程间通信。思维方式没对,main这个东西不应该出现在 web项目里。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-04-08
展开全部
那要看如何写的了、什么环境中的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式