JSmooth 为您的 Java 应用程序提供各种包装器,每个包装器都具有自己的行为:选择您的口味!
下载: http://jsmooth.sourceforge.net/
2- JarToExe 1.8
Jar2Exe 是一款将 jar 文件转换为 exe 文件的工具。
以下是其网站上描述的主要功能:
下载:http://www.brothersoft.com/jartoexe-75019.html
3- Executor
将你的Java应用程序打包成jar文件,Executor会将它转换为Windows exe文件,与本地应用程序无异。只需双击exe文件即可调用Java Runtime Environment并启动你的应用程序。
下载:http://mpowers.net/executor/
编辑:上面的链接已失效,但是这里是互联网档案馆的页面(具有可用的下载链接)。http://web.archive.org/web/20090316092154/http://mpowers.net/executor/
4- Advanced Installer
Advanced Installer让您在几分钟内创建Windows MSI安装程序。它还支持Windows Vista,并帮助您创建其他语言的MSI软件包。
下载:http://www.advancedinstaller.com/
请告诉我你使用过哪些工具来将JAR转换为EXE。
在您的情况下,我建议使用GCJ(GNU Compiler for Java)。它是Java的AOT(ahead of time)编译器,类似于GCC对于C语言的作用。它不会解释代码或者生成中间Java代码并由Java虚拟机在以后运行,而是直接生成机器码。
GCJ可以通过各种Linux系统的包管理器(如果有的话)进行下载。安装之后,应该将GCJ编译器添加到路径中,以便在终端中调用。如果您使用的是Windows系统,可以通过Cygwin或MinGW下载和安装GCJ。
然而,我强烈建议您重写源代码,采用其他旨在进行编译的语言,如C ++。Java旨在成为一种便携式、解释性语言。将其编译成机器码完全违背了该语言开发的初衷。
我使用 launch4j
ANT 命令:
<target name="jar" depends="compile, buildDLLs, copy">
<jar basedir="${java.bin.dir}" destfile="${build.dir}/Project.jar" manifest="META-INF/MANIFEST.MF" />
</target>
<target name="exe" depends="jar">
<exec executable="cmd" dir="${launch4j.home}">
<arg line="/c launch4jc.exe ${basedir}/${launch4j.dir}/L4J_ProjectConfig.xml" />
</exec>
</target>
javaw
。 - NateSL4J_ProjectConfig.xml
文件的内容,这个答案会好得多。 - Stijn de Witt@echo off
set d=%~dp0
java -Xmx400m -cp "%d%myapp.jar;%d%libs/mylib.jar" my.main.Class %*
%~dp0提取了批处理文件所在的目录。这使得批处理文件可以找到jar文件的位置,而不需要任何特殊的环境变量或设置PATH变量。
编辑:在classpath中添加引号。否则,如Joey所说,“空格可能会导致一些有趣的事情发生”。
我们发现在Linux下使用Ant轻松脚本化Jsmooth非常好用。您可能想先使用one-jar(也可以在Linux下轻松脚本化)将多个文件应用程序收集到一个单独的jar中。
我们主要需要EXE的便捷部署,结合“嘿,您需要Java X版本,请到这里下载”的功能。
(但最有可能您需要的是标准Java中的“可运行jar”/“可执行jar”功能)。
java -classpath myprogram.jar de.vogella.eclipse.ide.first.MyFirstClass
这可以用于您的批处理...
有一小部分程序可以做到这一点... TowerJ 是其中一个(我会让你自己在谷歌上搜索),但它需要花费相当多的钱。
我发现这个主题最有用的参考资料是:http://mindprod.com/jgloss/nativecompiler.html
它提到了一些其他产品和实现相同目的的替代方案。