设为首页 收藏本站
查看: 476|回复: 0

[经验分享] 昨日困惑——Tomcat之应用不能启动!

[复制链接]

尚未签到

发表于 2017-1-29 14:50:06 | 显示全部楼层 |阅读模式
昨天下午,我一直在调试程序,由于本地环境等等局限性问题,我只能在测试服务器上进行部署测试。期间,我的HP NoteBook提示我有更新驱动,我随即确认更新,继续修改我的BUG。
由于我开发的是组件包,简单的说,就是jar,打包之后,我像往常以上上传至服务器,重启Tomcat。可无奈,小猫Tomcat很不配合,应用就是没起来,于是检查日志——catalina.out。
但令人失望的是,几乎什么都没有,就看到这么一个诡异的异常:
DSC0000.jpg
貌似是CRC32校验失败!
第一反应,war包部署的项目有问题。干掉所有webapp下的war包,重启,还是这个错误!此时,我征询各路英雄与我共谋大计,但无人能解此魔咒! DSC0001.gif
定睛一看,引用
at java.util.jar.JarInputStream.read(JarInputStream.java:177)
得,原来是jar错误!
重新用Maven打包,部署,重启,失败!
重新用Eclipse导出,打包,部署,重启,失败!
我心想,这是怎么了?!Tomcat没事玩我呢?!换只猫!失败!接近崩溃!错误依旧!
干脆,我也不用jar了,直接上class!部署,重启,失败!这次,catalina.out非常干脆,就说失败!
DSC0002.jpg
太无敌了!!!看来看catalina.out是没指望了,瞅瞅localhost.log!
DSC0003.jpg
引用
Caused by: java.lang.ClassFormatError: Truncated class file

DSC0004.jpg
虽说做Java时间不能算很长,但各种诡异的错误也见过了,就是没见过Caused by: java.lang.ClassFormatError: Truncated class file,顿时无奈了!Truncated - 截断,怎么就截断了?!无奈,疯狂,重新编译,部署,重启,问题依旧,崩溃,多少有点职业挫败感!折腾一下午,就是没反应!!!嘛问题!
突然,想起网管最具实际意义的一句话——重启!
索性,重启本子!!!
就盯上那个ServiceImpl类了,重新编译,部署这个class!!!
DSC0005.jpg
引用
Caused by: java.lang.ClassFormatError: Illegal UTF8 string in constant pool in class file com/ver/service/Service
这个错误太有乐了!
实现类ServiceImpl正常了,接口Service反而有问题,看看代码。嗯,有中文字符,导致UTF-8编码不对?!
重新编译这个接口,部署,重启,失败!不过这时候冒出来另一个类的异常,跟这个错误类似!!!问题找到了!!!
删除之前部署的class,重新编译,打包jar,部署,重启,成功!!!
内牛马面哪!!! DSC0006.gif

这是为啥呢?!
如果一开始Tomcat报告Zip错误时,能够指明发生错误的jar文件名,至少定位可以跟准确!当时我部署了一堆jar,还真不好说是自己打包的jar中的那个错误!!!
如果不是引用
Caused by: java.lang.ClassFormatError: Illegal UTF8 string in constant pool in class file com/ver/service/Service
,我坚决想不出来问题所在!
仔细琢磨,就因为我当时更新了一个网卡驱动!就因为这个,导致系统编译字符编码不正确?!太诡异了!整整一下午,就这样被这个破驱动浪费了!!!
都是驱动惹得祸!!!
本来只是改条SQL,结果,差点把Tomcat给错杀了!!!汗!!!
以后更新驱动,一定老老实实的重启!!!还是网管的名言有实际意义!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-335004-1-1.html 上篇帖子: 一个Tomcat 配置多个应用工程 下篇帖子: 增加静态方法要重启tomcat?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表