如何将java exe提取到jar中

时间:2008-11-25 08:30:55

标签: java

我有一个我知道的exe是用java编写的。我知道java程序可以制作成exe,并且有工具将jar文件转换为exe但是可以转换回来吗? AFAIK jar文件可以在任何可以运行java的平台上运行,我想在mac上使用windows编译的java程序而不使用任何额外的虚拟化(wine,vmware)

4 个答案:

答案 0 :(得分:13)

这取决于exe的构建方式:

  • 如果使用JSmooth之类的工具(正如此thread所建议的那样)进行简单包装,则同一工具可以extract the jar
  • 如果已编译,例如gcj(如this question所示),......我不确定。
  • 如果它是由静态编译器(或AOT - Ahead-Of-Time - )编译的,我相信无法提取orignial jar。

答案 1 :(得分:4)

如果您的应用程序是使用JSmooth包装的,则可以在应用程序运行时查看默认临时目录(C:\ Documents and Settings \ Username \ Local Settings \ Temp)。

打开一个Windows资源管理器窗口到临时目录,然后启动您的应用程序。你应该看到一个jar文件出现(Temp#.jar)。只需复制一份,你应该在路上。

答案 2 :(得分:1)

我建议您将文件扩展名从 .exe 重命名为 .jar 并尝试提取它们。 查看代码使用 java Decompiler LIKE: http://java-decompiler.github.io

答案 3 :(得分:0)

可以将file.exe转换回file.jar,要使用此逆转过程,需要知道文件是如何加密的,例如,如果是第一级加密类名称和文件不是隐藏,对于第二级文件类是隐藏的,对于第3级文件和类是隐藏的。得到这个很好的下载jar到exe软件,并尝试如何将jar转换为exe然后你将能够知道反过来。要了解如何继续撤销流程,有一个博客可以帮助我,你可以使用的所有工具都列在那里:资源黑客 WinHex中 Ollydbg 1.10+ MemoryDump 0.9和Olly Advanced或StrongOD插件(用于高级ctrl + g)。 DJ Java Decompiler 7-Zip或Winrar 链接:  https://reverseengineeringtips.blogspot.com/2014/12/unpacking-jar2exe-21-extracting-jar.html?showComment=1480364662658#c447064983483780468

谢谢