jre

JDK12 的下载和没有jre的解决及环境配置

回眸只為那壹抹淺笑 提交于 2019-12-05 02:16:08
一、下载直接在官网上下载并点击安装即可,步骤省。 jdk12下载中途已经没有跳出窗口下载jre的过程了,需要手动生成jre. 二、没有jre的解决: 1.cmd 2.切换到jdk的安装目录,执行命令: bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre 三、环境配置: 1.打开 2.添加环境变量: 2.1 2.2 jdk12已经不用配置classpath了,因为储存的文件位置发生了改动。 2.3测试jdk是否安装成功: 打开cmd 输入命令:java -version ———————————————— 版权声明:本文为CSDN博主「蟹蟹肉」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/F_K999/article/details/90230546 来源: https://www.cnblogs.com/sggggr/p/11897126.html

JVM,JDK,JRE

徘徊边缘 提交于 2019-12-05 00:53:20
JVM,JDK,JRE 什么是JVM Java 虚拟机。 这个名词 由Java和虚拟机前后两部分组成 。 它有和其他虚拟机 共性 :JVM是通过软件模拟的计算机系统。 它也有自己的 特性 :JVM使用软件模拟的指令集是Java字节码, 通过字节码这个中间层做到屏蔽对系统的依赖 。 追问:什么是字节码?字节码的好处? 字节码是Java虚拟机的指令,是具有一个字节长度的数字。 好处: 和解释性语言相比 解决了传统解释性语言执行效率低的问题,同时保留了语言可移植性的特点。所以Java程序高效且 无需重新编译 便可在多种不同操作系统上运行。 原因是:对于一般的代码,JVM将字节码 解释执行,屏蔽对系统的依赖 ;对于热点的代码,会通过 JIT动态编译为机器码 ,提高执行效率。 再追问:什么是JIT? JIT是Just In Time的意思,也就是即时编译 再追问:即时编译那么快,为什么不全部都进行即时编译呢? 引用博客园ddzz1991 空间开销的角度看: 对一般的Java方法而言, 编译后 代码的大小相对于字节码的大小, 膨胀比达到10x ,如果把所有代码都编译则会显著增加代码所占空间,导致“代码爆炸”。 时间开销的角度看: 对比 解释执行和动态编译 解释器的执行,抽象的看 :字节码 -> [ 解释器 解释执行 ] -> 执行结果 JIT编译然后再执行的话,抽象的看 :字节码 -> [

JVM 运行参数 & 代码监控

六月ゝ 毕业季﹏ 提交于 2019-12-04 22:01:02
1、Java代码监控 JDK提供java.lang.management包, 其实就是基于JMX技术规范,提供一套完整的MBean,动态获取JVM的运行时数据,达到监控JVM性能的目的。 package com.agan.jvm; import java.lang.management.*; import java.util.Arrays; import java.util.List; public class JVMDemo { public static void main(String[] args) { System.out.println("----------Memory--------"); MemoryMXBean memoryMXBean = ManagementFactory.getMemoryMXBean(); MemoryUsage usage = memoryMXBean.getHeapMemoryUsage(); System.out.println("初始化Heap:" + usage.getInit()/1024/1024 + "mb"); System.out.println("最大Heap:" + usage.getMax()/1024/1024 + "mb"); System.out.println("已使用Heap:" + usage

线程池提交的两种方式:execute与submit的区别

孤者浪人 提交于 2019-12-04 20:51:12
Java中的线程池在进行任务提交时,有两种方式:execute和submit方法。 一、execute和submit的区别 execute只能提交Runnable类型的任务,无返回值。submit既可以提交Runnable类型的任务,也可以提交Callable类型的任务,会有一个类型为Future的返回值,但当任务类型为Runnable时,返回值为null。 execute在执行任务时,如果遇到异常会直接抛出,而submit不会直接抛出,只有在使用Future的get方法获取返回值时,才会抛出异常。 测试代码: package com.javaBase.LineDistancePond; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; /** * 〈一句话功能简述〉; * 〈execute与submit的区别〉 * * @author jxx * @see [相关类/方法](可选) * @since [产品/模块版本] (可选) */ public class TestThreadPoolBegin { public static void main(String[] args) throws Exception{ ExecutorService es =

Nginx+Tomcat负载均衡群集(实战可跟做!)

与世无争的帅哥 提交于 2019-12-04 18:04:57
Nginx+Tomcat负载均衡群集 nginx处理静态 tomcat处理动态 合并为动静分离(前后端分离) Tomcat重要目录 bin:存放启动和关闭Tomcat脚本 conf:存放Tomcat不同的配置文件 doc:存放Tomcat文档 lib/japser/common:存放Tomcat运行需要的库文件 logs:存放Tomcat执行时的LOG文件 src:存放Tomcat的源代码 webapps:Tomcat的主要Web发布目录 Demo前置知识点: Nginx静态处理优势 1.Nginx处理静态页面的效率远高于Tomcat的处理能力 2.如果Tomcat的请求量为1000次,则Nginx的请求量为6000次 3.Tomcat每秒的吞吐量为0 6M,Nginx的每秒吞吐量为3.6M 4.Nginx处理静态资源的能力是Tomcat处理的6倍,优势可见一斑 动静分离原理:服务端接收来自客户端的请求中,既有静态资源也有动态资源 环境准备: nginx:192.168.18.147---->CentOS 7-2 Tomcat 1:192.168.18.128---->CentOS 7-3 Tomcat 2:129.168.18.148---->CentOS 7-4 Client:192.168.18.129---->Win 7-1 Tomcat 1服务器CentOS 7-3的操作

在linux上通过yum安装JDK

假如想象 提交于 2019-12-04 15:56:48
卸载centos自带的jdk 1.查看当前的jdk版本,并卸载 [root@localhost opt]# rpm -qa|grep java java-1.6.0-openjdk-1.6.0.37-1.13.9.4.el5_11 tzdata-java-2015g-1.el5 //卸载 [root@localhost opt]# rpm -e --allmatches --nodeps java-1.6.0-openjdk-1.6.0.37-1.13.9.4.el5_11 [root@localhost opt]# rpm -e --allmatches --nodeps tzdata-java-2015g-1.el5 安装Jdk 1.查找java相关得列表 [root@localhost jre-1.6.0-openjdk.x86_64]# yum -y list java* Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * addons: mirrors.btte.net * base: centos.ustc.edu.cn * extras: centos.ustc.edu.cn * updates: centos.ustc.edu.cn Installed Packages

javax.net.ssl.SSLHandshakeException(Cas导入证书)

谁说胖子不能爱 提交于 2019-12-04 06:32:27
一.报错: javax.net.ssl.SSLHandshakeException 二.原因分析: CAS部署时,常常要涉及到HTTPS的证书发布问题。由于在实验环境中,CAS和应用服务常常是共用一台PC机,它们跑在相同的JRE环境和Tomcat服务器上,因此忽略了证书的实际用途,一旦将CAS和应用分别部署在不同的机器上时,就晕了! 这里假设如下实验环境来说明相应的部署 机器A: 部署CAS服务 机器B: 部署OA应用 机器C: 用户浏览器端 1.由机器A上生成.keystore的证书文件,证书颁发者是机器A的完全域名 2.机器A上用于部署CAS的Tomcat的server.xml文件中定义HTTPS的配置,指向.keystore文件证书 3.从.keystore中导出的凭证文件要copy到机器B上,并导入机器B的JRE环境的证书库中 4.机器B上部署OA的Tomcat必须指定运行在导入凭证JRE环境上,而不是JDK,这点常有人搞错。 三.导入证书步骤: 1.找到JRE 1)机器B的OA应用直接部署在Tomcat >>>独立的JRE 如果你在安装JDK时,选择了同时安装JRE,那么系统是跑在独立的JRE上。 为什么?因为在安装独立JRE的时候程序自动帮你把jre的java.exe添加到了系统变量中,验证的方法很简单,大家看到了系统环境变量的 path最前面有“%SystemRoot

JDK、JRE、JVM的区别和关系

早过忘川 提交于 2019-12-04 04:36:44
JVM :英文名称(Java Virtual Machine),就是我们耳熟能详的 Java 虚拟机。它只认识 xxx.class 这种类型的文件,它能够将 class 文件中的字节码指令进行识别并调用操作系统向上的 API 完成动作。所以说,jvm 是 Java 能够跨平台的核心,具体的下文会详细说明。 JRE :英文名称(Java Runtime Environment),我们叫它:Java 运行时环境。它主要包含两个部分,jvm 的标准实现和 Java 的一些基本类库。它相对于 jvm 来说,多出来的是一部分的 Java 类库。 JDK :英文名称(Java Development Kit),Java 开发工具包。jdk 是整个 Java 开发的核心,它集成了 jre 和一些好用的小工具。例如:javac.exe,java.exe,jar.exe 等。 ———————————————— 这三者的关系是:一层层的嵌套关系。JDK>JRE>JVM 来源: https://www.cnblogs.com/zhichengL/p/11831534.html

System

笑着哭i 提交于 2019-12-04 04:35:11
System package com.mozq.demo.demo; import java.util.Properties; public class Demo_02 { public static void main(String[] args) { Properties properties = System.getProperties(); properties.forEach((k, v)->{ System.out.println(k + "=" + v); }); } } 用户信息 user.dir=D:\00\mozq_pro1\shiro 文件系统信息 file.separator=\ java.vendor=Oracle Corporation java.version=1.8.0_181 java.vm.specification.version=1.8 java供应商信息 java.vm.vendor=Oracle Corporation sun.cpu.isalist=amd64 sun.desktop=windows sun.io.unicode.encoding=UnicodeLittle sun.cpu.endian=little java.vendor.url.bug=http://bugreport.sun.com/bugreport/ file

idea bug解决

◇◆丶佛笑我妖孽 提交于 2019-12-03 17:21:09
1、编译时错误:软件包 javax.servlet.http 不存在import javax.servlet.http.HttpServletRequest 解决办法:把servlet-api.jar加到classpath中 如:把Tomcat目录下的 tomcat\lib\servlet-api.jar 拷贝到 Java\jdk1.6.0_22\jre\lib\ext 目录下,问题解决。 2、maven包导入后找不到jar文件 解决方法:将maven引用文件删除重新下载 来源: https://www.cnblogs.com/miaosj/p/11804564.html