java使用-Java反编译技术
使用场景: 如果你想改源码,那么可以参考我工作场景中使用过的案例步骤:
1. 将.class->.java
首先找到需反编译的jar包.并解压出来
找到需要反编译的class文件,使用jd-gui进行查看,使用jad进行反编译成java文件
jad下载地址: https://varaneckas.com/jad/
下载之后将jad.exe放入jdk/bin下,与java.exe同级
使用命令:
jad -sjava xxx.class
参考: https://blog.csdn.net/admin123404/article/details/118993216
将得到的java文件放到解压出来的jar包顶层目录下.
2. 查看.java的编译版本
下载UltraEdit软件,将.java拖到UE里,显示为16位进制码,查看15,16位字节来检测出该jar包编译时的jdk环境版本
使用合适的jdk版本进行后续操作.可以参考以下地址:
https://blog.csdn.net/so_sou/article/details/77947806
https://blog.csdn.net/wj15175196397/article/details/121921010
3. 用选好的运行环境jdk版本进行javac操作
将.java文件->按需修改之后->.class
举例:
cmd窗口里:
jdk1.7之前版本:
"C:\Program Files\Java\jdk1.7.0_80\bin\javac.exe" -g xxx.java
jdk1.8版本:
"C:\Program Files\Java\jdk1.7.0_80\bin\javac.exe" -g -parameters xxx.java
4. jar命令重新打包
将步骤3得到的.class文件放回原来的位置
jar打包时,原来的jar包顶层结构是什么样子,现在重新打包的结构也必须是那个样子
使用命令:
举例:
"C:\Program Files\Java\jdk1.7.0_80\bin\jar.exe" cvf xxx.jar *
* : 表示打包当前路径下的所有文件夹到jar包里
5. 将新的jar包替换掉原来的旧jar包
参考地址: https://blog.csdn.net/admin123404/article/details/118993216
参考地址: https://blog.csdn.net/so_sou/article/details/77947806
参考地址: https://blog.csdn.net/wj15175196397/article/details/121921010