java程序jar包打包成exe文件
说明:将java程序打包成window系统下的exe文件分三步
第一步:创建java程序,需要包含一个主方法;
第二步:打jar包,通过模块打包。
第三步:构建exe,使用软件exe4j将jre,jar包构建成exe文件
案例演示:
第一步:创建java程序,需要包含一个主方法;
开发软件:idea ,jdk1.8
项目名称:deskSoftDemo ,直接finish
设置项目jdk
创建一个java类
这里有两种,选择一个即可
创建一个java类 1
技术:javaSwing
参考:Java Swing 介绍 | 菜鸟教程 (runoob.com)
import javafx.scene.layout.Pane; import javax.swing.*; import java.awt.*; /** * @author lanpengbiao * @version 1.0 * @Description DeskSoftDemo2 * @date Created in 2023-4-26 9:48 * @since jdk1.7 */ public class DeskSoftDemo2 { /**{ * 创建并显示GUI。出于线程安全的考虑, * 这个方法在事件调用线程中调用。 */ private static void createAndShowGUI() { // 确保一个漂亮的外观风格 JFrame.setDefaultLookAndFeelDecorated(true); // 创建及设置窗口 JFrame frame = new JFrame("HelloWorldSwing"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(500,300); // 添加 "Hello World" 标签 JLabel label = new JLabel("Hello World"); frame.getContentPane().add(label); // 显示窗口 // frame.setPreferredSize(new Dimension()); // frame.pack(); frame.setVisible(true); } public static void main(String[] args) { // 显示应用 GUI javax.swing.SwingUtilities.invokeLater(new Runnable() { public void run() { createAndShowGUI(); } }); } }
运行效果:
创建一个java类2:
技术javaFx ;
说明:注意:如果jdk 版本高于1.8,就需要引入javaFx依赖。
<dependency> <groupId>org.openjfx</groupId> <artifactId>javafx-controls</artifactId> <version>19.0.2.1</version> </dependency> <dependency> <groupId>org.openjfx</groupId> <artifactId>javafx-fxml</artifactId> <version>19.0.2.1</version> </dependency>
新建一个有main方法的类 DeskSoftDemo
import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.TextField; import javafx.scene.layout.BorderPane; import javafx.stage.Stage; /** * @author lanpengbiao * @version 1.0 * @Description DeskSoftDemo * 一个简单的javaFx 的窗口 * @date Created in 2023-4-26 9:32 * @since jdk1.7 */ public class DeskSoftDemo extends Application { public static void main(String[] args) { launch(args); } @Override public void start(Stage stage) throws Exception { //javaFx面板 BorderPane borderPane = new BorderPane(); borderPane.setCenter(new TextField("文本域")); //javaFx场景 Scene scene = new Scene(borderPane,500, 300); //Stage stage 是javaFx的一个窗口 stage.setTitle("DeskSoftDemoWindow"); stage.setScene(scene); stage.show(); } }
运行效果:
第二步 打jar包
如果是maven项目:
如果不是maven项目:
第三步:使用exe4j将jar包转换为exe
软件下载地址:exe4j Download (apponic.com)
如果不对直接百度官网。
参考:https://blog.csdn.net/m0_66345324/article/details/122838211
exe4j秘钥:Java程序生成可执行的exe文件 详细图文教程_java exe_抓手的博客-CSDN博客
打卡软件下一步:
选择构建模式
VM Parameters中可以设置虚拟机的一下参数,-Dfile.encoding=utf-8是设置了utf-8的编码,以防中文乱码;
选择打好的jar包
选择主入口:
配置jre版本
我这里选择了本地的jre目录
将添加的jre上移到最上,点击下一步
后面全部下一步
运行效果: