Java 从.exe获取.jar

Java 从.exe获取.jar,java,windows,jar,exe,decompiler,Java,Windows,Jar,Exe,Decompiler,我目前正在处理的是一个包含可执行文件.jar的Windows.exe。我试过通过各种.exe和.jar反编译器运行它,但都没有用。我的问题是,我将如何获得.jar,使其处于被转换为.exe之前的状态 请注意,我不想将程序从C++或C→转换为java,而是将.jar打包成.exe,返回到原始.jar。< /p> < p>,不知道它是如何打包到exe中的,一种方法是替换rt.jar中的coreClassLoader,并将数据写入其defineClass方法中的文件。这样,无论何时加载类,它们都将写入

我目前正在处理的是一个包含可执行文件.jar的Windows.exe。我试过通过各种.exe和.jar反编译器运行它,但都没有用。我的问题是,我将如何获得.jar,使其处于被转换为.exe之前的状态


请注意,我不想将程序从C++或C→转换为java,而是将.jar打包成.exe,返回到原始.jar。< /p> < p>,不知道它是如何打包到exe中的,一种方法是替换rt.jar中的core

ClassLoader
,并将数据写入其
defineClass
方法中的文件。这样,无论何时加载类,它们都将写入相应的文件

请注意,这是一种黑客行为,有很多陷阱。举个例子,它不会在jar文件中包括其他数据,比如资源。你最好的办法是找出它是如何像上面提到的@HovercraftFullOfEels那样打包的


OpenJDK java.lang.ClassLoader

如何将其放入exe?用什么工具?不知道这一点,这可能是一个无法回答的问题。OTOH,即使您知道这一点,也可能无法回答。解决方案首先取决于它如何包装在exe文件中。如果你不知道,那么你最好的选择是资源黑客工具(这一个不再维护,但它曾经为我工作)你可以尝试使用类似7Zip的东西来解压文件,不保证会work@HovercraftFullOfEels不幸的是,我不知道jar是如何包装的。你应该通过让提供“.exe”的人/公司允许你访问jar或源代码来避免所有这些繁重的工作。