OpenJDK

ubuntu 安装 JDK

柔情痞子 提交于 2020-03-02 00:23:14
ubuntu 安装 JDK 1,ubuntu 安装 JDK 1,ubuntu 安装 JDK # wget https://download.java.net/java/GA/jdk13.0.2/d4173c853231432d94f001e99d882ca7/8/GPL/openjdk-13.0.2_linux-x64_bin.tar.gz # tar -zxvf openjdk-13.0.2_linux-x64_bin.tar.gz # mv jdk-13.0.2/ /opt/ # vim /root/.bashrc export JAVA_HOME=/opt/jdk-13.0.2 export PATH=$PATH:$JAVA_HOME/bin # source /root/.bashrc # echo $JAVA_HOME /opt/jdk-13 JDK 1.8 卸载 # java -version openjdk version "1.8.0_242" OpenJDK Runtime Environment (build 1.8.0_242-8u242-b08-0ubuntu3~16.04-b08) OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode) # sudo apt-get remove openjdk*

JDK之JVM中Java对象的头部占多少byte

会有一股神秘感。 提交于 2020-03-01 12:28:31
先做个铺垫: 在32位机器上word size是32bits,CPU一次性处理32bits,在64位机器上word size是64bits,CPU一次性处理64bits。 Data bus size, instruction size, address size are usually multiples of the word size,这句参考自 Stackoverflow 。 1. Stackoverflow上看到的Java对象头部mark word和kclass pointer的大小 从Stackoverflow上 看到,Java对象头部有一个 mark word 和一个 klass pointer, mark word:32bits architectures上,mark word占32bits,64bits architectures上,mark word占64bits; kclass pointer:32bits architectures上,kclass pointer占32bits,64bits architectures上,kclass pointer占64bits,但也可能是32bits,原话是这样"the klass pointer has word size on 32 bit architectures. On 64 bit architectures

腾讯云服务器Centos7上安装JDK

冷暖自知 提交于 2020-02-29 20:47:32
登陆云服务器 1.输入命令yum install java-1.8.0-openjdk java-1.8.0openjdk-devel进行安装, 出现Complete!后就安装完成了。 2.检查JDK是否安装成功 java -version 3.Linux上使用yum命令后,会将OpenJDK安装到/usr/lib/jvm/目录下: 来源: CSDN 作者: 梦凝哲雪 链接: https://blog.csdn.net/Klhz555/article/details/104576867

在linux上使用yum安装JDK

主宰稳场 提交于 2020-02-29 17:02:42
1.查找java相关得列表 [root@localhost ~]# yum -y list java* Loaded plugins: fastestmirror, refresh-packagekit, security Loading mirror speeds from cached hostfile base: mirrors.zju.edu.cn extras: mirrors.aliyun.com updates: mirrors.aliyun.com base | 3.7 kB 00:00 extras | 3.4 kB 00:00 updates | 3.4 kB 00:00 Installed Packages java-1.5.0-gcj.x86_64 1.5.0.0-29.1.el6 @base/$releasever java-1.6.0-openjdk.x86_64 1:1.6.0.0-1.45.1.11.1.el6 @base/$releasever java_cup.x86_64 1:0.10k-5.el6 @base/$releasever Available Packages java-1.5.0-gcj-devel.x86_64 1.5.0.0-29.1.el6 base java-1.5.0-gcj-javadoc.x86_64 1.5.0.0

00.编译OpenJDK-8u40的整个过程

风流意气都作罢 提交于 2020-02-29 12:00:32
前言 历经2天的折腾总算把OpenJDK给编译成功了,要说为啥搞这个,还得从面试说起,最近出去面试经常被问到JVM的相关东西,总感觉自己以前学的太浅薄,所以回来就打算深入学习,目标把《深入理解Java虚拟机》这个本书要啃下来。接下来问题来了,读个这个书的人都知道这个书的第一章就是讲如何编译自己的JDK,书上的东西看着简单,自动动手另外是一回事,经过这么几天折腾体会很深刻,做技术的,还是要踏踏实实的一步步来。好高骛远是大忌。废话不多说,下面给出自己编译过程 环境要求 系统:CentOS7 编译源码版本:OpenJDK-8u40 下载地址:链接: https://pan.baidu.com/s/1LRP_67uBezBqn-gfStlH-A 密码:o65r Bootstrap JDK:Oracle JDK1.7.0_75 下载地址:链接: https://pan.baidu.com/s/1sKuXkNcnjJp-qCe5_4_qVw 密码:n1fq ccache版本:3.14 下载地址:链接: https://pan.baidu.com/s/1-qvxAMkaJS1ASSVbNZHkFA 密码:m9fj 编译所以需要的安装包以及系统文件下载地址: 链接: https://pan.baidu.com/s/1Jb1iSSmutZKLmzjncIdRXA 密码:myk9 安装前准备 yum

安装jdk和tomcat

落爺英雄遲暮 提交于 2020-02-28 17:22:40
安装jdk和tomcat 1,准备工作 虚拟机 VMware ;liunx系统镜像 bebian ;连接操作软件 putty; 开源图像FTP客户端winspc; Java 语言的软件开发工具包 JDK; 开放源代码的Web 应用服务器 Tomcat; Bebian 下载地址 https://www.debian.org/distrib/ Jdk 下载地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html Tomcat 下载地址http://tomcat.apache.org/download-90.cgi 2.安装虚拟机及系统 安装注意事项:1》安装时选择ssh工具 2》安装过程要牢记root密码 默认注意事项:1》Debian桌面环境默认不允许root登录,如果想登录,所以需要修改配置 2》安装完成后默认root账户是无法通过SSH远程登录到主机的。需要修改配置文件vi /etc/ssh/sshd_config 搜索/PermitRootLogin 将PermitRootLogin without-password修改为PermitRootLogin yes保存退出:wq重启sshd服务/etc/init.d/ssh restart 就可以登录了。 3》升级软件

深入理解JVM

浪子不回头ぞ 提交于 2020-02-28 04:51:12
如果下面的一些概念有些不清楚的可以先看 深入理解JVM - 垃圾收集器 。 Shenandoah是一款只有OpenJDK才会包含的收集器,最开始由RedHat公司独立发展后来贡献给了OpenJDK,相比G1主要改进点在于: 支持并发的整理算法,Shenandoah的回收阶段可以和用户线程并发执行; Shenandoah 目前不使用分代收集,也就是没有年轻代老年代的概念在里面了; Shenandoah 摒弃了在G1中耗费大量内存和计算资源去维护的记忆集,改用名为“连接矩阵”(Connection Matrix)的全局数据结构来记录跨Region的引用关系,降低了处理跨代指针时的记忆集维护消耗,也降低了伪共享问题的发生概率。 Shenandoah收集器的工作过程 Shenandoah收集器的工作过程一共有九个阶段,下图只画了最核心的三个阶段并发标记、并发回收、并发引用更新。 初始标记(Initial Marking) :与G1一样,只标记与GC Roots直接关联的对象,这个阶段仍是“Stop The World”的,但停顿时间与堆大小无关,只与GC Roots的数量相关。 并发标记(Concurrent Marking) :与G1一样,从GC Root开始对堆中对象进行可达性分析,找出存活的对象,可与用户线程并发执行,不会造成停顿

Linux系统准备(CentOS7)之jdk安装

有些话、适合烂在心里 提交于 2020-02-28 00:21:22
1、Linux安装jdk 1.1、查看系统自带的jdk rpm -qa | grep jdk 1.2、删除系统自带的jdk rpm -e --nodeps java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64 rpm -e --nodeps java-1.7.0-openjdk-1.7.0.141-2.6.10.5.el7.x86_64 rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.141-2.6.10.5.el7.x86_64 rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.131-11.b12.el7.x86_64 rpm -e --nodeps copy-jdk-configs-2.2-3.el7.noarch 1.3、安装jdk #将安装包传输到opt目录下,解压 tar -zxvf jdk-8u152-linux-x64.tar.gz\ 1.4、配置环境变量 vim /etc/prifile #配置参数 JAVA_HOME=/opt/jdk1.8.0_152 PATH=$PATH:$JAVA_HOME/bin CLASSPATH=$JAVA_HOME/lib export JAVA_HOME PATH CLASSPATH 1.5

How to Install Java on Debian 9

≡放荡痞女 提交于 2020-02-28 00:02:38
In this tutorial, we will walk through installing Java on Debian 9. Java is one of the most popular programming languages used to build different kinds of applications and systems. Applications developed in Java are scalable, flexible and maintainable. There are two different Java packages, Java Runtime Environment (JRE) and Java Development Kit (JDK). If you only want to run Java programs, then you need JRE and if you are Java developer, then you will need JDK which includes JRE and development/debugging tools and libraries. There are also two different implementations of Java, OpenJDK and

从架构师视角看是否该用Kotlin做服务端开发?

允我心安 提交于 2020-02-27 20:54:29
前言 自从Oracle收购Sun之后,对Java收费或加强控制的尝试从未间断,谷歌与Oracle围绕Java API的官司也跌宕起伏。虽然Oracle只是针对Oracle JDK8的升级收费,并释放了OpenJDK一直开源这份善意,但是如果没有各个大非Oracle的JVM、JDK和众多其它基于JVM的语言,Oracle这份善意能维持到什么时候可不好说。 大厂要从JVM和JDK的层面早做打算,而广大中小企业,就只能先从Java语言的层面,先找到Oracle以外的备胎。自从被谷歌钦定为Android开发首选语言之后,采用Apache2.0 License的Kotlin逐渐进入大众的视野。从领域语言到通用语言,基于JVM的语言选择众多,Kotlin能脱颖而出被谷歌相中,除了License的友好外,自然有其独到之处(个人觉得基于Python语法的Jython在当时也算是一个强强联合的选择,当然现在来看Kotlin的优势明显)。我们先从摘自网上的一个段子来感受下Kotlin的特点: Scala:想解决Java表达能力不足的问题 Groovy:想解决Java语法过于冗长的问题 Clojure:想解决Java没有函数式编程的问题 Kotlin:想解决Java 当然,团队开发比个人开发要考虑的问题更多,本文从研发团队的视角,来审视在服务端开发项目中是否应该使用Kotlin