Java 编译后的class文件覆盖注意要点

来源:互联网 发布:恩施二手淘宝 编辑:程序博客网 时间:2024/06/07 02:49

今天在tomcat中出现了一个错误,是一个常量文件写入错误。修改了常量Java类文件编译后覆盖并没有解决问题。最初以为是缓存严重,清除了缓存,kill了Java进程还是问题还是依旧。最后没有办法,用jd-gui查看了一下编译后常量文件,并没有问题。这个时候太纳闷了。后来没办法,想想查看下调用常量的class 文件吧。这下找到了问题所在。

下面贴出代码解释:

首先在Constants.java中建立一个name常量,


在A.java中引用name常量。


编译后查看A.class文件:

可以看到无论我如何修改Constants.java中name的值,只要以前编译好的A文件不被重新编译的覆盖,我无论如何修改Constants.java中的值都没有用。这也是今天问题的原因所在。在这里写一篇博客记遇到的问题。

阅读全文
0 0