我有一个 jar 文件,其中包含几个类。在那个 jar 里有一个我想编辑的Confirmation.class 文件。我使用 JAD 反编译了该类。然后我用 notepad++ 编辑它并保存为 .java 文件。
现在我如何使用其他类创建新的 jar 文件?
其他文件格式是.class,但我的是.java,有问题吗?
如果是,我该如何编译我的 .java 类? (当我使用命令 javac Confirmation.java 时,它会给出错误并需要其他类)
谢谢..
最佳答案
你对其他jar有依赖吗?
如果是这种情况,您必须提前将它们放在编译器类路径中。
无论如何,只需反编译所有包(我使用jd-gui),更改类,编译,将原始jar作为zip打开,将新类放在上面,就完成了。
另一种方法是为缺少的依赖项创建虚拟类...
就我个人而言,我真的不鼓励这种使用已编译的包进行“逆向工程”的方法,但我理解您无法访问原始源代码,但需要紧急修复某些内容的情况(例如:在一家公司工作,您的代码来自地球另一端的外部提供商...)
关于Java 编辑 Jar 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21016350/