jd-gui是一个非常好的java反编译工具。但是有一点就是用它导出的java文件与源代码中的行号大部分是对应不上的。jd-gui采用将行号以注释的方式显示出来比如在某行开头有个这个”/* 100 */” 表示这行代码在源代码里的第100行。这样的话我们在没有源文件的时候又希望能够远程调试代码几乎是不可能的,并且对于有代码洁癖的人来说阅读带有这么多无用的注释内容更痛苦了。在这里写了个小工具,将行号尽可能的和源文件的行号对应上,同时删除jd-gui加上的注解。比如你的java文件在D:\test\source下那么会在D:\test\下创建一个”source+当前时间戳”的文件夹,格式化后的代码就在这里面。
jd-gui是一个非常好的java反编译工具。但是有一点就是用它导出的java文件与源代码中的