我知道这个问题已被多次询问,并且所有时间都有一个答案说明了使用可执行jar或使用launch4j或类似应用程序制作.exe。
我可能听起来像一个新手,我其实是。
我一直在尝试Java项目。我已经成功地制作了一个可执行jar和一个.exe文件。全部归功于您之前在SO中的答案:)
但是,我想为Windows创建一个安装程序。比如,按Next键2到3次(显示所有条款和条件等),然后用户指定一个位置(如C:\ Program Files \ New Folder \ My App),然后是我的.exe,lib文件夹,img文件夹,其他重要文件夹与.exe文件一起粘贴到目标文件夹中,然后在桌面上创建快捷方式。
任何指示我如何实现这一目标?
我一直在使用InnoSetup很长一段时间。它一直很好用。它可以做你需要的一切(解压缩文件,在桌面上放置快捷方式,开始菜单等)并生成我们习惯的安装程序。
比如,按Next键2到3次(显示所有条款和条件等)
JNLP API的ExtensionInstallerService
提供了这个功能。这是一个demo. of the installer service。
..然后用户指定一个位置(如C:\ Program Files \ New Folder \ My App),..
ExtensionInstallerService
提供了一种方法getInstallPath()
..
返回建议安装程序安装扩展的目录。安装程序不需要安装在此目录中,这只是建议的路径。
这与你提出的问题并不完全相同,但我认为让用户达到控制水平通常是一个坏主意。
然后我的.exe,lib文件夹,img文件夹,其他重要文件夹与.exe文件一起粘贴在目标文件夹中..
JWS会在需要时自动安装JNLP中提到的资源。此外,如果服务器上的存档发生更改,它会更新资源。
然后在桌面上创建一个快捷方式。
JWS可以在支持的系统上提供桌面快捷方式和菜单项。
EG
几个月前,我处于同样的境地。经过多次尝试后。我建议NSIS。 Eclipse EclipseNSIS有一个很好的插件,带有一些模板。只需轻松点击即可获得基本安装程序。如果生成的代码不够,您可以通过编码完成其余工作,但大多数代码都是由EclipseNSIS生成的。
你也可以使用Advanced Installer。由于您已经有一个EXE来启动JAR,您不需要使用Advanced Installer的Java Launcher支持,您可以创建一个免费版本的Simple project,因此您无需购买许可证。
安装它并创建安装包最多需要10分钟,因为您会发现使用它很容易学习。
如果您使用的是JDK 13或更高版本,则可以使用JDK中名为Jpackage
的默认打包工具打包任何Java程序及其运行时。这可以固有地为Linux,Mac和Windows操作系统创建安装程序。
该工具的EA已作为JDK的一部分提供。
您可以使用jlink创建特定的运行时。
Jpackage需要一些第三方免费软件来创建Windows捆绑包:
.exe
包,它使用Wix.msi
包,它使用Inno有关Jpackage的所有详细信息,请访问JEP 343: Packaging Tool。