JavaFx 打包jar(六)

JavaFX 从入门入门到入土系列
我们编写了不少javafx,那么如何打包成jar给用户呢?下面我给出比较全的打包方式。

打包jar

下面我给出比较全的打包方式。

1. Maven项目打包

Maven项目打包首先需要修改pom.xml,添加maven-jar-plugin插件

<packaging>jar</packaging>

    <properties>
<!--打包编码-->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties> <build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<addMavenDescriptor>false</addMavenDescriptor>
<manifest>
<addClasspath>true</addClasspath>
<useUniqueVersions>false</useUniqueVersions>
<classpathPrefix>lib/</classpathPrefix>
<!--指向要运行的Main类-->
<mainClass>FxmlDemo</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>

执行打包命令:

mvn clean package

运行这个jar包

java -jar --module-path "C:\Program Files\Java11\javafx-sdk-11.0.2\lib" --add-modules javafx.controls,javafx.fxml javafx-demo-1.0-SNAPSHOT.jar

注意,我的jdk为11,运行时需要先添加javafx的依赖模块
效果如下

2. 普通Main打包

非Maven项目打包,我们添加一个版本输出



然后点OK,编译jar即可。



然后运行它,注意,我的jdk为11,运行时需要先添加javafx的依赖模块

java -jar --module-path "C:\Program Files\Java11\javafx-sdk-11.0.2\lib" --add-modules javafx.controls,javafx.fxml javafx-demo.jar

3. 其他window运行

在其他window运行时,需要把jdk11的运行时环境单独拿出和javafx的依赖,把这些依赖放到jar同一目录,编写一个.bat脚本运行它即可。

JavaFx 打包jar(六)的更多相关文章

  1. 利用Github Action实现Tornadofx/JavaFx打包

    原文地址: 利用Github Action实现Tornadofx/JavaFx打包 - Stars-One的杂货小窝 最近开了个新项目,主要是个工具软件,也算个人的自娱自乐吧,也算开源的一部分,想着都 ...

  2. idea打包jar的多种方式

    这里总结出用IDEA打包jar包的多种方式,以后的项目打包Jar包可以参考如下形式: 用IDEA自带的打包形式 用Maven插件maven-shade-plugin打包 用Maven插件maven-a ...

  3. 基于Java的打包jar、war、ear包的作用与区别详解

      本篇文章,小编为大家介绍,基于Java的打包jar.war.ear包的作用与区别详解.需要的朋友参考下   以最终客户的角度来看,JAR文件就是一种封装,他们不需要知道jar文件中有多少个.cla ...

  4. Eclipse将android项目打包jar文件

    Eclipse+android打包jar文件 蔡建良 2016-3-12 以Android-SlideExpandableListView开源框架为例,将源码Library打包成jar文件并包含R.c ...

  5. 关于在打包Jar文件时遇到的资源路径问题(二)

    在关于<关于在打包Jar文件时遇到的资源路径问题(一)>中,以及描述了当资源与可执行JAr分离时的资源路径代码的编写问题,后来想了想,为什么将<Java核心技术卷一>中的程序1 ...

  6. 关于在打包Jar文件时遇到的资源路径问题(一)

    当我们将程序写好,并进行打包成Jar文件时,通常都带有各种资源,这些资源可以是图像或者声音文件,也可以是别的如文本文件或二进制文件等,这些资源都和代码密切相关.例如在一个JPanel类上显示一些可能变 ...

  7. java打包jar,war,ear包的作用、区别

    java的打包jar,war,ear包的作用,区别,打包方式. a) 作用与区别      i.    jar: 通常是开发时要引用通用(JAVA)类,打成包便于存放管理      ii.   war ...

  8. MAVEN 打包JAR

    <build> <finalName>edu-service-user</finalName> <resources> <resource> ...

  9. AndroidStduio3.0 使用gradle将module打包jar文件

    AndroidStduio3.0使用gradle将module打包jar文件,首先需要安装gradle. 打开控制台输入      open -e .bash_profile     命令,就可以打开 ...

  10. android studio application应用打包jar

    转载: https://blog.csdn.net/xiayiye5/article/details/79639044 首先我们来说下打成jar包的分类: 1.application应用打成jar包 ...

随机推荐

  1. 前端CSS五中元素定位类型

    元素想通过底部.顶部.左侧.右侧属性定位是必须先设定position的属性值 posistion属性的五个值:static.relative.fixed.absoulte.sticky static定 ...

  2. Hyper-V 下的 Debian 双网卡配置

    Debian 双网卡配置 因为 Hyper-v 不能在 Hyper-v Manger 里设置网卡的静态 IP, 而每次开机自启之后又要连接 Debian 虚拟机,所以使用了双网卡. 双网卡分为内网网卡 ...

  3. CF671D Roads in Yusland 题解

    题目链接 题目要求我们求出选出若干条路径并最小化花费,如果这是在链上,我们可以考虑直接枚举每条路径的右端点 dp,那树呢?把路径剖分整个覆盖的集合就不一定连续了,没法 dp,况且题目里给了很强的条件: ...

  4. git 创建本地分支并关联远程分支

    1.查看远程分支 git branch 可以看到,我本地只有dev和master分支.现在同事创建了一个远程分支dev-glq,里面是他的代码.我应该再我本地创建一个分支,并且他的关联远程分支. 2. ...

  5. source insight 中添加指定类型文件

    以下为source insight 3.X版本的设置方法: source insight 中过滤某些格式的文件. 建立source insight工程后,先暂时不要急于添加文件. 打开options- ...

  6. 计算机网络之防火墙和Wlan配置

    一.防火墙 防火墙(firewall)是一种安全设备,它的位置一般处于企业网络边界与外网交界的地方,用于隔离不信任的数据包 准确点讲,它就是隔离外网和内网的一道屏障,用于保护内部资源信息安全的一种策略 ...

  7. java中Calendar日历类型常见方法

    Calendar是Java中常用的时间处理工具之一,它提供了很多日历类型常见方法,下面是一些常用的方法及对应的代码和运行结果. 1. 如何创建 Calendar 日历对象 Calendar 是一个抽象 ...

  8. Streamlit 快速构建交互式页面的python库

    基础介绍 streamlit 是什么 Streamlit是一个面向机器学习和数据科学团队的开源应用程序框架,通过它可以用python代码方便快捷的构建交互式前端页面.streamlit特别适合结合大模 ...

  9. 前端技术探秘-Nodejs的CommonJS规范实现原理

    了解Node.js Node.js是一个基于ChromeV8引擎的JavaScript运行环境,使用了一个事件驱动.非阻塞式I/O模型,让JavaScript 运行在服务端的开发平台,它让JavaSc ...

  10. Vue02-小案例(购物车功能)

    效果图 主要代码 index.html <!DOCTYPE html> <html lang="en"> <head> <meta cha ...