简介:
Javassist是一款字节码编辑工具,可以直接编辑和生成Java生成的字节码,以达到对.class文件进行动态修改的效果。熟练使用
这套工具,可以让Java编程更接近与动态语言编程。
假设我们要修改 aspose-cells-19.7.jar 中的 com.aspose.cells.License,并重新打包生成 jar。
1、maven 中引入 javassist 依赖包
<dependency>
<groupId>javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.8.0.GA</version>
</dependency>
2、编写 Test.java,反编译修改 com.aspose.cells.License
package com.test;
import javassist.*;
import java.io.IOException;
/**
* 需要依赖 javassist jar
* */
public class Test {
public static void main(String[] args) throws NotFoundException {
// 获取反编译池
ClassPool aDefault = ClassPool.getDefault();
// 获取需要反编译的jar
aDefault.insertClassPath("d:/Users/99/Desktop/test/aspose-cells-19.7.jar");
// 获取需要反编译修改的文件,完整路径
CtClass ctClass = aDefault.get("com.aspose.cells.Licens

本文介绍了如何利用Javassist这一字节码编辑工具,详细步骤包括:引入javassist依赖,反编译并修改aspose-cells-19.7.jar中的com.aspose.cells.License类,覆盖原有.class文件,最后重新打包生成jar文件。
最低0.47元/天 解锁文章
2453





