我从一个解压的.jar文件开始。我只需要在该jar文件内容中包含的一个类中更改几行代码。我是这样做的:
1)在Java Decompiler中打开类,查看源码。
2)将源文件复制到一个新的文本文件中,并以".java“扩展名保存。
3)在命令行中,我进入jdk文件夹,执行javac Classname.java重新编译。
但是,该类代码导入了一些依赖项,因此重新编译失败。我有依赖项,它们是原始jar文件内容的一部分,但它们都是编译后的.class文件,分布在几个文件夹中……
是否可以成功地重新编译这个类?是否有包含依赖项的命令行代码?
发布于 2012-06-13 10:50:43
是的,使用-classpath选项。
javac -classpath original.jar Modified.java然后,您可以从jar文件中删除旧的类并插入新的类。没有一种简单的方法可以通过命令行来实现这一点,所以我建议使用归档应用程序,比如WinRAR或7-zip。
https://stackoverflow.com/questions/11007559
复制相似问题