[英]How can I convert a .jar to an .exe?
我想将.jar
转换为 Microsoft 的.exe
。 有没有这个的程序转换器?
此外,如果有适用于 Mac 和 Linux 的版本,我也会很感激这些建议。
Launch4j适用于 Windows 和 Linux/Mac。 但是,如果您运行的是 Linux/Mac,有一种方法可以将您的 jar 嵌入到为您执行自动启动的 shell 脚本中,因此您只有一个可运行文件:
exestub.sh:
#!/bin/sh
MYSELF=`which "$0" 2>/dev/null`
[ $? -gt 0 -a -f "$0" ] && MYSELF="./$0"
JAVA_OPT=""
PROG_OPT=""
# Parse options to determine which ones are for Java and which ones are for the Program
while [ $# -gt 0 ] ; do
case $1 in
-Xm*) JAVA_OPT="$JAVA_OPT $1" ;;
-D*) JAVA_OPT="$JAVA_OPT $1" ;;
*) PROG_OPT="$PROG_OPT $1" ;;
esac
shift
done
exec java $JAVA_OPT -jar $MYSELF $PROG_OPT
然后你从你的 jar 中创建你的可运行文件:
$ cat exestub.sh myrunnablejar.jar > myrunnable
$ chmod +x myrunnable
它的工作方式与 launch4j 的工作方式相同:因为 jar 具有zip 格式,其标头位于文件末尾。 你可以有任何你想要的头文件(二进制可执行文件或者像这里的 shell 脚本)并运行java -jar <myexe>
,因为<myexe>
是一个有效的 zip/jar 文件。
JSmooth .exe 包装器
JSmooth 是一个 Java 可执行包装器。 它为您的 Java 应用程序创建本机 Windows 启动器(标准 .exe)。 它使 Java 部署更加顺畅和用户友好,因为它能够自行找到任何已安装的 Java VM。 当没有可用的 VM 时,包装器可以自动下载并安装合适的 JVM,或者只是显示一条消息或将用户重定向到一个网站。
JSmooth 为您的 java 应用程序提供了多种包装器,每个包装器都有自己的行为:选择您的风格!
下载:http: //jsmooth.sourceforge.net/
JarToExe 1.8 Jar2Exe 是一个将 jar 文件转换为 exe 文件的工具。 以下是他们网站上描述的主要功能:
可以生成“Console”、“Windows GUI”、“Windows Service”三种类型的.exe文件。
生成的 .exe 文件可以添加程序图标和版本信息。 生成的.exe文件可以对java程序进行加密保护,程序运行时不会生成临时文件。
生成的 .exe 文件提供系统托盘图标支持。 生成的 .exe 文件提供记录系统事件日志支持。 生成的 windows 服务 .exe 文件能够自行安装/卸载,并支持服务暂停/继续。
执行人
将您的 Java 应用程序打包为 jar,Executor 会将 jar 转换为 Windows .exe 文件,与本机应用程序无法区分。 只需双击 .exe 文件即可调用 Java 运行时环境并启动您的应用程序。
如果您的程序是“公开的非商业性质的”并且具有“符合基本质量标准的公开网站” ,那么您可以尝试获得 Excelsior 的免费许可证。 如果不是,那么它很昂贵,但仍然是一个可行的选择。
程序: https ://www.excelsiorjet.com
作为旁注:这是对所有现有 Jar 到 EXE 程序的研究,这有点令人沮丧 - https://www.excelsior-usa.com/articles/java-to-exe.html
尽管这违反了关于这些问题的一般 SO 政策,但这似乎是 OP 真正想要的:
http://www.google.com/search?btnG=1&pws=0&q=java+executable+wrapper
如果您愿意,您还可以尝试创建包含单行的适当批处理或脚本文件:
java -jar MyJar.jar
或者在 Windows 上的许多情况下,只需双击可执行 jar。
我使用了 Launch4J,它完美无瑕,
如果没有,请尝试试运行按钮(绿色播放按钮)。 如果它在下面的控制台中显示 LinkageError,则在 jvm-options 中键入--enable-preview
。 它应该工作。 我希望它有所帮助。
对于 Windows,您可以使用以下方式将 jar 转换为 exe:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.