服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - 修改及反编译可运行Jar包实现过程详解

修改及反编译可运行Jar包实现过程详解

2020-09-30 00:32yaominghui Java教程

这篇文章主要介绍了如何修改及反编译可运行Jar包,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

将可运行Jar包反编译成项目,修改代码,再次编译,打包。

需要工具:jd-gui、myeclipse

具体步骤:

1、使用jd-gui打开原始的Jar包,选择File-->Save All Sources,会生成一个zip压缩包

修改及反编译可运行Jar包实现过程详解

2、解压这个压缩包,生成一个文件夹,可以看到文件夹里所有的class文件变成了java源码文件。(如果最开始直接解压原始的Jar包,那么解压出来的就是class文件,而不是java源文件)

3、打开myeclipse,新建一个普通的Project项目,将解压后的内容拷贝到项目里。

4、此时编译会报错,因为缺少依赖的Jar包,需要找到相应的包并且导入。那么这些包到底是哪些呢?

  使用jd-gui打开最原始的Jar包,在META-IN目录下的maven目录下,有所需要的依赖包。其中pom.properties中记录着Jar包的版本信息,可以直接从maven仓库下载这些包

修改及反编译可运行Jar包实现过程详解

5、最后,项目重新编译,并且打成Jar包。如果生成的源码可以运行,就直接编译,直接打包。

6、如果生成的项目不能运行,但是你只需要更改一两个类:

(1)编译。如果导入了所依赖的包,那么项目编译应该是没问题的,这一步仔细检查。然后使用myeclipse或者java命令编译,生成一个class文件。

修改及反编译可运行Jar包实现过程详解

(2)打包。

简单的方法:使用rar,zip,好压等解压缩工具打开原始的Jar包,直接把修改的class文件拖进去,覆盖原来的class文件。

复杂的方法:将原始Jar包,直接解压生成一个文件夹,解压后的是class文件。用修改后的class文件进行替换,再将这个文件夹压缩生成一个zip文件,最后将zip文件的后缀名改成jar,即可运行。

注意使用winrar工具打包时,要选择压缩文件格式为zip

修改及反编译可运行Jar包实现过程详解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://www.cnblogs.com/acm-bingzi/p/decompileJar.html

延伸 · 阅读

精彩推荐