首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

首发! JDK14之jpackage命令尝鲜

jpackage命令使用场景 使用场景是面向java桌面端程序打包. 可以windows/mac 直接双击使用java程序,对系统里面有没有jdk/jre不做要求....在这里,我们先理一下以前java桌面程序是怎么运行: jdk8及以前 这时候java客户端程序,主要分两部分, 一部分是可执行jar包, 一部分是电脑里面要装jdk/jre , 然后通过 java...-jar XXXXX.jar 来运行程序. jdk9及以后模块化 这是java模块化一个分界线,其实jdk9,jdk10,都没有用过, 是直接尝试jdk11....最后实验成功打包命令是: /Users/lixiang/soft/jdk-14.jdk/Contents/Home/bin/jpackage --runtime-image image --type...项目所用到判断系统工具,读取/更改host工具等开源地址如下: https://github.com/xiaodaojava/sunshine 里面还有很多很多常用工具.

3.6K30

WIN10安装64位JDK10.0.2详细完整教程(图文)

大家好,又见面了,是你们朋友全栈君。...1.下载JDK 1)如下图,点击红色箭头处: 2)如下图,选择接受协议,点击黄色标注64位10.0.2版本jdk进行下载: 3)下载好JDK文件如图所示: 2.安装JDK10.0.2...1)双击下载好JDK进行安装,如下图: 2)点击下一步,点击更改选择安装目录,选择是:D:\Program Files\Java\jdk-10.0.2\ 如果想使用默认也可以,为了减轻C盘压力...3.配置环境变量 1)右击电脑,选择属性,选择高级系统设置: 2)点击环境变量: 3)在系统变量新建CLASSPATH,添加下面两条: D:\Program Files\Java\jdk-10.0.2...4.测试JDK安装是否成功 1)打开cmd,输入java,可输出配置项信息: 2)输入 java -version,可输出jdk版本: 以上表示成功安装。

96940
您找到你想要的搜索结果了吗?
是的
没有找到

一次对JDK进行减肥记录

起因 最近做一个小项目,因为要涉及到批量部署,每次在部署之前都需要在各个主机上先安装jdk环境(为了使用jdk自带工具如jps等,所以没有单纯安装jre),但是因为jdk文件太大(以jdk-8u161...xuweilinjijis/article/details/77527117 jdk1.8运行环境精简瘦身 实践 根据搜索到资料,结合自身实际需求,以满足程序能够正常运行最低需求,对jdk-...如下是对JDK进行精简实践具体步骤: 删除运行程序并不需要文档文件及目录 jdk1.8.0_161/javafx-src.zip jdk1.8.0_161/src.zip jdk1.8.0_161...删除运行程序并不需要jar包,文件及目录 jdk1.8.0_161/lib/missioncontrol jdk1.8.0_161/lib/visualvm jdk1.8.0_161/lib/ant-javafx.jar...文件导致消耗时间太长这个痛点了,所以才考虑这么做.另外,虽然需要对程序进行批量部署,但是由于程序很简单,并未使用比较复杂自动化部署工具,如:Ansible,Puppet等等,而是仅仅通过一个shell

1.5K20

【万字图文】详解设计模式(下篇)

这简直是个巨大大坑。 如图所示: 12.1> 定义 定义了算法族,分别封装起来,它们之间可以互相替换,此模式算法变化独立于使用算法客户。...如图所示: 13.1> 定义 将一个接口,转换成客户期望另一个接口。适配器原本接口不兼容可以合作无间。...那么,当有通知过来,收到了,自己再去拉我自己需要内容。而不是采用你给我什么,就接收什么。 任何时候,我们都可以增加新观察者。...17.1> 定义 提供了一个统一接口,用来访问子系统中一群接口。外观定义了一个高层接口,子系统更容易使用。...针对以上问题,我们可以使用状态模式来解决。 20.1> 定义 允许对象在内部状态改变时改变它行为,对象看起来好像修改了它

1K70

Java程序员需要了解—容器中JVM资源该如何被安全限制?

我们希望当Java进程运行在容器中时,java能够自动识别到容器限制,获取到正确内存和CPU信息,而不用每次都需要在kubernetesyaml描述文件中显示配置完容器,还需要配置JVM参数。...Docker通过CGroups完成是对内存限制,而/proc目录是已只读形式挂载到容器中,由于默认情况下Java 压根就看不见CGroups限制内存大小,而默认使用/proc/meminfo中信息作为内存信息进行启动...一般我们都只配置Heap即使用-Xmx来指定JVM可使用最大堆。而JVM默认会使用它获取到最大内存1/4作为原因也是如此。...下面是整理一个常见内存设置表格, 从中我们可以看到似乎JVM默认最大堆取值为MaxRAMFraction=4,随着内存增加,堆闲置空间越来越大,在16G容器内存时,java堆只有不到4G。...2 GB 结论 注意:这里我们说是容器内存限制,和物理机内存不同, 自动档 如果你想要是,不显示指定-Xmx,Java进程自动发现容器限制。

1.4K30

如何在CentOS 7上安装WildFly 14

export JAVA_HOME=/opt/jdk-10.0.2 export JRE_HOME=/opt/jdk-10.0.2/jre export CLASSPATH=..../opt/jdk-10.0.2 setenv JRE_HOME /opt/jdk-10.0.2/jre setenv CLASSPATH ....您也可以使用“屏幕”软件包在屏幕上运行它,但每次服务器重新启动时,您仍需要手动启动它。为了解决这个问题,我们创建了一个简单文件,允许您将WildFly注册为服务。...只需按照以下几个步骤操作,您就可以启动和停止WildFly作为常规服务,并它在服务器启动时运行。...: systemctl daemon-reload 现在,您可以将其作为常规服务启动 - 只需像任何其他服务一样运行它: systemctl start wildfly.service 如果您希望启用它以便每次启动计算机或服务器时都运行

76410

回顾Java 8 9 10新特性,展望即将来临11和明年12【大牛经验】

工具 javadoc 工具支持新 DocTree API,您可以将 Javadoc 注释作为抽象语法树来进行遍历。...这些JAR内容对于在此运行时映像上编译或运行所有应用程序都可见。 jre\lib目录包含几个JAR。 rt.jar文件包含运行Java和资源文件。 许多工具依赖于rt.jar文件位置。...java.lang.management.RuntimeMXBean: long getPid(): R 返回正在运行 JVM 进程 ID 。...嵌套访问控制,对应于Java当前嵌套类型。嵌套可以逻辑上属于同一代码实体但被编译到不同文件中互相访问对方私有成员,而无需编译器插入扩大访问权限方法。...当然,一些依赖于JDK中Java EE API及工具应用程序将无法编译或运行。将JDK 6、7或8移植到新版本时将会产生二进制不兼容和源代码不兼容。

3.2K30

此情可待成追忆:Java Mac 版黄金时代

将其作为一个 zip 压缩包发布,用户将其拷贝到他们计算机上所需位置。但是,在常常被要求提供“适当”安装程序后,就用 Install4J 来创建了安装程序。...用户界面非常简洁,不需要 JavaFX 提供任何华丽新图形。...尽管如此,还是饶有兴趣地关注着它们,因为雄心壮志早已超越了那卑微 OCR 应用,而现代图形和现代化平台对来说实在太有吸引力了,以至于我无法忽视。...很喜欢使用 Avian,但它运行时库没有包括所有的标准 JavaSE ,所以它需要做太多改动才能实用。(或许就是太懒了,不愿意去做这些改动)。...所用老式捆绑器和苹果 Java 绑定,并没有将 JRE 捆绑到应用中,而是将它和系统中 Java 安装绑定。在 JDK7 中,你需要将整个 JRE 捆绑到你应用捆绑器中。

73320

IDEA与eclipse桌面配置基础

,然后勾选新增maven,在配置User Settings–>选择mavensettings.xml文件Eclipse中Java–>Installed JREs,可以选择JRE所在目录,也可以选择...Compiler Compiler compliance level:编译Java程序时使用JRE版本。Libraries:配置classpath地方,既然要运行Java程序,肯定要包含JRE。...IDEA添加JDKIDEA设置Ctrl + 鼠标滚轮)字体大小IDEA取消文件夹自动合成将勾取消即可IDEA安装插件Codota 代码智能提示插件只要打出首字母就能联想出一整条语句,还显示了每条语句使用频率...Lombok 简化臃肿代码插件实体get/set/构造/toString/hashCode等方法,都不需要手动写Alibaba Java Coding Guidelines 阿里巴巴代码规范检查插件会按照阿里...:HOUR:{MINUTE}:${SECOND}@packageName ${PACKAGE_NAME}@className ${NAME}@version 1.0.0@describe TODO*/正在参与

30530

Windows环境下JDK安装与环境变量配置详细图文教程

这里选择是D盘。路径为:D:\Java\jdk1.8.0_25\ ? (4)等待安装结束之后。选择JRE安装路径,点击下一步。 默认会选择C盘。 ? 等待安装完成。 ?...(5)JRE安装 ? (6)这里选择D盘。选择更改时候,先在硬盘里面建一个文件夹。因为在选择时候它不给新建。这里是建了一个:jre1.8.0_25 文件夹。 ? ?...作用:它指向jdk安装目录,Eclipse/NetBeans/Tomcat等软件就是通过搜索JAVA_HOME变量来找到并使用安装好jdk。...作用:是指定搜索路径,要使用已经编写好,前提当然是能够找到它们了,JVM就是通过CLASSPTH来寻找。...检验是否配置成功 运行cmd 分别输入java,javac, java -version (java 和 -version 之间有空格)。 1.Java ? 2.Javac ?

15.6K30

InfoQ 最新 Java 发展趋势报告

和 2020、2019 年 Java 发展趋势报告一样,下面是 2021 年我们内部使用主题图谱: 作为背景信息,下面是 2020 年我们内部使用主题图谱。...看到,这些东西在快速增加,但很难把它们都搞清楚。Snyk 调查似乎与我看到使用情况一致。...JavaFX/Gluon Costlow:对于 Gluon 为使单个 JavaFX 代码库随处可运行所做工作,印象非常深刻。...采用模块化 Silz:认为 JPMS 试图解决三个问题:应用服务器加载困境;更好地组织 JDK 和所有的 Java 应用;减少部署 / 运行 JVM 内存占用。...使用 VS Code 进行 Java 开发有一个令人兴奋副作用,就是你可以很轻松地用非 JVM 语言进行开发。认为你在 Eclipse 中根本无法做到这一点,或者只能在一定程度上做到。

61420

JAVAFX(一) java Module 模块化简介

这样使用者就不需要再单独安装jdk/jre了, 加上java9之后javamodule化, 可以最大程度上精简jre, 虽然是精简了,但实际上,大家可以看到, 每次在群里面发包,还是接近100MB...了. javaFX java身为一个跨平台语言,我们对其更多直观感受是在win/mac 上写了一个springboot程序, 然后丢到win/linux服务器上去运行....用上面用jpackage打包之后应用, 在不同平台上打的包, 可以在不同平台上运行. 虽然在UI/字符显示上会有些许差别,但是差别不怎么大. 可以通过接口-不同平台实现方式进行处理....: 我们这个模块(模块名: red.lixiang.tools.sunflower) 需要javafx.controls和javafx.fxml模块 opens: 主要是反射使用,javafx.fxml...可以反射red.lixiang.tools.sunflower中,然后可以对应实例化,或者调用实例中方法 Jlink 在java 模块化中, jlink命令是核心,其作用就是把jdk中我们需要模块抽出来

2.2K10

Java入坑指南

跨平台,运行JRE上,JRE包括JVM 具有自动垃圾回收机制 属于强类型,简单,面向对象,分布式,健壮,安全,可移植,解释型语言(将会翻译成字节码,在JVM上运行),高性能,动态,多线程。...开发工具JDK,一个工具包,面向开发者工具包,包含JVM。 JRE,一个Java运行环境,分为服务器端运行环境和开发者运行环境。服务器端部署Java时候,需要使用JRE运行Java程序。...专业术语 JDK 编写Java程序程序员使用软件 JRE 运行Java程序用户使用软件 Server JRE 运行Java程序服务器使用软件 SDK 软件开发工具包 DAO 数据访问接口...底层使用C++完成对加载 执行机制 JVM是基于堆栈虚拟机,JVM为每个新创建线程分配一个堆栈,对于Java程序来说,运行时通过对堆栈操作来完成。...由于某些人气愤原因,包无法使用,那就用https://www.eclipse.org/downloads/packages/ hello world 现在书写第一个hello world程序 public

55920

利用Python爬取ZuluJDK最新发布版本并下载作为镜像分享站

GPLv2而开源,这个还挺有热度讨论;但是注意这个Classpath exception,认为开发出软件还是可以不使用GPL协议;具体怎么样,请求呼叫大佬在评论区支援(・_・; 设计思路 为了实现...拿PAW去帮你分担压力~~~ PAW里显示,有4473项,显然是过去所有的构建版本都在这里了。 Zulu服务器好大……4473个JDK/JRE……起码有1T存储空间了。...和刚刚Linux方法一样,再过滤掉JRE,只留最新版本: [使用代码] [最后结果] 这样看来,下载内容不多(27+12) 下载JDK 最后,我们就是下载了。...脚本: [编辑代码] 使用Python命令运行: [开始下载和爬取] 最后下载下来文件: [下载下来文件] 使用Nginx做个目录映射: [目录映射] 当然,我们可以使用Cron定期缓冲最新版本ZuluJDK...另外…… 突然发现:直接解析了ZuluJDK直链,用Nginx进行反代……似乎更方便;还不用占服务器空间!!!

2.5K122

Proxyee Down简介

下载JDK Proxyee Down是一个使用Java和JavaFx技术编写软件,所以要运行它,首先需要安装Java,官方推荐安装Java版本是Oracle JDK 8,自带JavaFX。...下载完成之后,就可以进行安装,安装过程和普通软件类似,选择好JDK和JRE安装位置,然后稍等片刻就会安装完毕。...下载完成后,如果正确安装JDK的话,应该可以直接双击运行jar文件。如果无法双击运行,可以尝试在jar文件所在目录打开cmd窗口,然后用下面的命令来运行Proxyee Down。...java -jar proxyee-down-main.jar 如果成功打开,应该会出现类似下图程序界面。 ? 下载百度网盘文件 首先来看看软件设置,下载路径自然不必多说。...Proxyee Down会使用前面设置连接数进行多线程下载,速度比默认网盘客户端要快多,相信可以大家更方便使用百度网盘。 ?

2K20

Java平台,标准版Oracle JDK 9中新功能

只包含一组指定模块及其所需模块自定义配置。 重新组织JDK和JRE运行时映像以适应模块,并提高性能,安全性和可维护性。...现代应用程序通常通过Java Web Start(使用JNLP文件),本机OS打包系统或活动安装程序进行部署。这些技术有自己方法来管理根据需要查找或下载和更新所需JRE。...在JDK 9中仍然可用,这些技术将被考虑在将来版本中从Oracle JDK和JRE中删除。 嵌入在网页中Applet和JavaFX应用程序需要Java插件才能运行。...创建程序只能使用JDK 9运行时。不能使用早期版本JRE运行打包应用程序。 请参阅在Java平台,标准版部署指南中JRE定制和打包模块化应用。...ctx=acc&id=trs 翻译时间仓促,所以先使用机器翻译,以便能大概明白其中重要意思,希望能对大家了解JDK9新特性有所帮助,各个翻译细节正在努力完善中,大家有什么好翻译意见可以留言告知,我会尽力修改完善

1.6K70

JavaFX——(第一篇:介绍篇)

硬件加速是不可能 完全硬件加速路径时,使用是可能,但当它不是有效,使用Java2D渲染路径,因为Java2D渲染路径已经分布在所有的Java运行时环境(jre)。...JavaFX media提供了3种组件:媒体对象作为一个媒体文件、媒体播放器播放一个媒体文件、使用MediaView作为结点显示媒体文件。...CSS可以应用于任何节点在JavaFX场景图和应用于异步节点。JavaFXCSS样式也可以轻松地分配到在运行场景,应用程序外观动态更改。...所有JavaFX属性名称加上前缀供应商扩展“fx -”,包括那些可能似乎符合标准HTMLCSS,因为一些JavaFX值都有略微不同语义。...注意: JavaFX场景构建器没有依赖任何特定IDE。您可以运行作为一个独立工具来创建您UI布局和编辑结果FXML文件使用一个文本编辑器,你选择。

5.5K60

使用Java在Netbeans IDE上开发JavaFX4个深坑总结,开发必看!

前言这篇文章真是操碎了心。本来想着在netbeans上面开发Javafx项目很容易,也就没怎么准备,就直接上手了。后来气想砸键盘。...由于现在大家普遍都使用eclipse和idea,导致这两个ide教程普遍多。这叫什么效应来着?因为用的人多,所以大家不得不去用,反过来又导致这一领域知识越来越多。.../Folder 那个按钮它如果是这样状态,代表我们添加成功,然后点击ok接下来我们创建一个javafx demo可以看到这个文档全部报错,是因为jar包不存在缘故也就是找不到接下来我们在 libraries...提示缺少java运行时组件,第三个深坑:这个问题原因是因为 要添加一些参数 (它非常关键):--module-path “你javafx lib路径” –add—modules javafx.controls.javafx.fxml...我们一定要把这个对号给它点掉,官方意思是什么呢,就是说你一保存,他就把这个加载到classpath中去了,没有javafx进一步加载,所以这个必须关掉,你不关掉,它肯定报错。

2.6K00
领券