我有一个包含seviral类的jar文件。在那个jar中有一个我要编辑的Confirmation.class文件。我用JAD反编译了那个类。然后我用notepad ++编辑它并保存为.java文件。
现在我如何用其他类创建我的新jar文件?
其他文件格式为.class但我的是.java,是不是有问题?
如果是,我怎么能编译我的.java类? (当我使用命令javac Confirmation.java时,它会出错并想要其他类)
谢谢..
答案 0 :(得分:1)
你有其他罐子的依赖吗?
如果是这种情况,则必须提前将它们放在编译器类路径上。
无论如何,只需反编译所有包(我使用jd-gui),更改类,编译,打开原始jar作为zip,将新类放在上面,然后就完成了。
另一种方法是为缺少的依赖项创建虚拟类......
就个人而言,我真的不赞成使用已编译的软件包进行“逆向工程”的方法,但我理解你无法访问原始源代码的情况,但是你需要紧急修复(ex:working)在一家公司,你的代码来自地球另一端的外部供应商......)
答案 1 :(得分:0)
您可以尝试复制并且;将代码粘贴到Java IDE中,例如Eclipse
,NetBeans
等,并要求IRS为您编译。祝你有愉快的一天:)