计划给予心脏公式


程序开发中的各种报错并不能归为BUG,至少它们比BUG还要低一个等级。由于这个阶段你还没有写出真实可用的程序,开发又进行不下去了,着实郁闷。

近期在帮人解决报错时突然悟道:报错,事实上就是七个字——"少了,多了,对不上"。

控制台输出的报错日志99%的报错都是这三个原因造成的。


"少了",顾名思义就是程序找不到须要的资源了。

著名的"java.lang.ClassNotFoundException"就是这一派的代表人物。

原始的包管理中,一堆的jar包堆在lib文件夹里。少了一个两个。通常可以让你收到一打的"ClassNotFoundException"了。和jar包们朝夕相处久了,他们少了哪一个,瞄一眼就补上了。

当初个个跟天外来客一样还有版本号匹配什么的。能集成一套让程序跑起来。恨不得把他们珍藏起来。

报404、No Mapping之类的都去查他们的来源是不是因各种原因少了或是根本没有配。总之,程序跟你抱怨找不到东西了。不要发脾气,耐心地帮他一起找吧。


"多了",和前面正好相反,只是他不会说找不到东西了。他可能会抱怨"could not be resolved"或是其它婉约的表达。所以你看到程序開始胡说八道了,但又没少东西。找找"Root cause of "附近的类所属的资源。

加了同样的jar包,配多了资源。写多了忘了凝视。反正东西多了程序不知道该用哪个,还不知怎么说,就開始胡说了。


"对不上",事实上是前面两个的综合体。多了不该要的。少了该要的。这样的报错有时候报的非常明显。

Oracle的数据库用了MySQL的数据驱动包。拼写XML报文头尾没合上等等。这些一眼就能看出来了。

怕的就是一些相似的资源搞混了,还没有报错。比方结构同样的内网数据库配反了。

程序启动不会报异常,但非常快会发现数据对不上之类。这类错误比較难排查。

只是仅仅要熟记"七字口诀",逐项排除,报错还是很easy排除。


版权声明:本文博客原创文章,博客,未经同意,不得转载。

原文地址:https://www.cnblogs.com/mfrbuaa/p/4611357.html