java class修改
2016-03-10 16:05
323 查看
最近因项目需要,反编译了某些项目的源代码,当然出于软件著作权考量,并不提倡这么做,本文仅仅成技术层面讲述如何修改以字节码形式的CLASS 类;很多同学会说:可以通过目前很多主流的反编译工具去反编译,但对于有些JAR依赖的,反编译后没有相关的依赖包,将很难编译回去!
从网是搜了写相关修改CLASS类的文章,其中有一片/article/8392256.html是用jclasslib_windows_3_0,
大致思路是:获取源CLASS的相关信息,再用jclasslib包写代码替换源CLASS生成目标CLASS;笔者认为此法过于复杂,也不直观;
经过一番折腾终于在网上找到了一个工具Java Class File Editor(国外),可以选择打开源CLASS,支持可视化的修改CLASS的相关信息,功能挺强大(附件为工具包)。具体的操作非常简单,常量池、方 法区等相关信息都可以很直观的去修改!
http://dongzhecao.iteye.com/blog/1885485
从网是搜了写相关修改CLASS类的文章,其中有一片/article/8392256.html是用jclasslib_windows_3_0,
大致思路是:获取源CLASS的相关信息,再用jclasslib包写代码替换源CLASS生成目标CLASS;笔者认为此法过于复杂,也不直观;
经过一番折腾终于在网上找到了一个工具Java Class File Editor(国外),可以选择打开源CLASS,支持可视化的修改CLASS的相关信息,功能挺强大(附件为工具包)。具体的操作非常简单,常量池、方 法区等相关信息都可以很直观的去修改!
http://dongzhecao.iteye.com/blog/1885485
相关文章推荐
- 深入理解Java虚拟机笔记---方法调用
- Java 代理使用及代理原理
- java 协程 实现 Akka
- java 远程通讯之 rmi
- Java远程通讯可选技术及原理
- Java中参数传递是值传递,还是引用传递
- spring 注解 extends
- JAVA并发编程实践笔记
- java 汉字按照拼音排序
- java Gearman helloword
- java.lang.OutOfMemoryError:GC overhead limit exceeded
- Java URL协议扩展实现
- java报表中AIX字体丢失解决方案
- java 之方法调用 方法传参 值传递还是引用传递字节码
- Java中的10颗语法糖
- Java集合框架之LinkedList-----用LinkedList模拟队列和堆栈
- jdk 版本并发 性能
- compareTo()方法返回值 String java
- java 对象池
- java string