标签:功能 框架 nbsp 源码修改 容器 忽略 遇到 执行 修改
今天在公司调试代码时,遇到一个很奇怪的问题。我在一个接受jar包扩展的框架系统下按照其格式开发了一个jar包。并导入到该系统中运行。后来发现该jar包代码存在一些问题,把源码修改后重新打成jar包,以替换原来的jar包,并进行调试。但是在调试的过程中发现,代码执行的顺序很混乱,而且有些代码根本没有执行就被直接跳过了。这让我百思不得其解。
后来绕了很多弯路才想到,我在修改源码的时候并没有修改类的全限定名,一个类加载器对同一个类的符号引用只会加载一次。在我替换jar包后,虽然代码已经更新,但类加载器并不会重新加载此类,导致了我之前遇到的问题。
其实这个问题很简单,只是我们平时习惯了各种web service 容器提供的热部署,热加载功能,反而忽略了这些最基本的细节。瑾以此提醒自己,不要被习惯所蒙蔽。
标签:功能 框架 nbsp 源码修改 容器 忽略 遇到 执行 修改
原文地址:http://www.cnblogs.com/mengzhucanyun/p/7518868.html