Java反编译修改jar包

Java反编译修改jar包

步骤:
1.定位找到要修改的源码,源码是.class的文件并且是only-read模式。(推荐用idea编辑器)

2.在项目上新建.java文件,并且.java文件的包路径和源码.class文件路径一致。

3.复制源码.class文件中的代码到新建的.java文件中,然后按自己需求修改源码。

4.用编辑器对已经修改过的.java文件进行编译生成.class文件,编译后生成的.class文件在项目根目录下的target\classes\对应的包文件中。

5.将源码的jar包复制,用压缩软件打开复制后的jar包,找到需要修改源码的.class文件,用修改并编译后的.class文件替换jar包中的原.class文件,然后修改jar包名。(最好只改版本号)

6.配置maven并加入到环境变量中,在maven的bin目录下打开cmd窗口,在该cmd窗口下执行:
mvn install:install-file -Dfile=D:\mongodb-driver-core-3.8.4.jar -DgroupId=org.mongodb -DartifactId=mongodb-driver-core -Dversion=3.8.4 -Dpackaging=jar
这步的作用是将修改后的jar包上传到本地的中央仓库,并没有上传到远程的中央仓库。
DgroupId,DartifactId这两个参数与pom.xml中dependency标签中的依赖对应。
注意:D:\mongodb-driver-core-3.8.4.jar是路径和jar包名,根据实际自身实际情况修改。

7.修改项目pom.xml文件,先排除远程仓库中自动下载的jar包;
例:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> <exclusions> <exclusion> <groupId>org.mongodb</groupId> <artifactId>mongodb-driver-core</artifactId> </exclusion> </exclusions> </dependency>
然后引入之前本地上传中央仓库的jar包;
例:<dependency> <groupId>org.mongodb</groupId> <artifactId>mongodb-driver-core</artifactId> <version>3.8.4</version> </dependency>
然后Reimport,重新导入pom.xml文件更新本地仓库,随后便可在本地仓库中找到最新修改的jar包,重新build,install一下,启动项目,源码修改完成。

猜你喜欢

转载自blog.csdn.net/RookieCode/article/details/107025046