如何将java exe解压缩到jar

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

这取决于exe的构建方式:

  • 如果它只是用JSmooth这样的工具包装(如这个线程所建议的那样),那么同一个工具可以提取jar
  • 如果它已被编译,例如gcj( 如此问题所示 ),……我不确定。
  • 如果它是由静态编译器(或AOT – Ahead-Of-Time – )编译的,我相信不可能提取orignial jar。

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

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

可以将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

谢谢