CentOS下Java的安装与环境配置
网上的文章很多,但我还是不知道下次需要看谁的,或是给朋友推荐谁的,索性我都整理出来,方便下次需要的时候能很快的看到或是给朋友链接。
两种安装方式:解压安装和包安装
1.安装前检查:
因为安装系统时所选的服务不同,有时候我们选择的服务系统是不会预安装openJDK的,但有时候会预安装,所以在安装sunJDK的时候最好先检查一下现在目前系统中有没有别的JDK版本。【openJDK和sunJDK有什么不同?见注】
· 检查
[mario@localhost ~]$ rpm -qa | grep jdk (在已安装的程序包中筛选包含jdk的记录信息)
java-1.7.0-openjdk-1.7.0.171-2.6.13.2.el7.x86_64
copy-jdk-configs-3.3-2.el7.noarch
java-1.7.0-openjdk-headless-1.7.0.171-2.6.13.2.el7.x86_64
java-1.8.0-openjdk-headless-1.8.0.161-2.b14.el7.x86_64
java-1.8.0-openjdk-1.8.0.161-2.b14.el7.x86_64
如上是预安装的包,一般都不需要保留
[mario@localhost ~]$ java (java指令可用)
Usage: java [-options] class [args...]
(to execute a class)
or java [-options] -jar jarfile [args...]
(to execute a jar file)
如上是使用java指令的正常显示
[mario@localhost ~]$ java -version (查看java版本)
openjdk version "1.8.0_161"
OpenJDK Runtime Environment (build 1.8.0_161-b14)
OpenJDK 64-Bit Server VM (build 25.161-b14, mixed mode)
如上是目前使用的jdk版本
[mario@localhost ~]$ javac (javac指令不可用)
bash: javac: command not found...
Similar command is: 'java'
如上是使用javac的指令不成功
· 卸载不需要的jdk版本,如果没有可忽略(注意这里是root用户,之前都是mario用户)
[root@localhost ~]# yum remove *openjdk* (卸载包含openjdk的包)
[root@localhost ~]# rpm -e copy-jdk-configs (卸载copy-jdk-configs包)
如上是两种卸载方式,可以用yum一次性匹配,但注意别把需要的包都卸载了,或者使用rpm -e 逐个卸载,但注意包的依赖
· 卸载完成监测结果如下
[mario@localhost ~]$ rpm -aq | grep jdk
[mario@localhost ~]$ java
-bash: /usr/bin/java: No such file or directory
[mario@localhost ~]$ javac
bash: javac: command not found...
如上是卸载完以后,监测结果的显示
2.安装
2.1包安装:
· 准备 jdk-8u171-linux-x64.rpm,http://www.oracle.com/technetwork/java/javase/downloads/index.html(可以选择需要的版本)
· 安装过程如下
[root@localhost Downloads]# rpm -i jdk-8u171-linux-x64.rpm
· 安装后检测
[root@localhost java]# pwd
/usr/java
[root@localhost java]# ll
total 0
lrwxrwxrwx. 1 root root 16 Jun 27 16:00 default -> /usr/java/latest
drwxr-xr-x. 9 root root 268 Jun 27 16:00 jdk1.8.0_171-amd64
lrwxrwxrwx. 1 root root 28 Jun 27 16:00 latest -> /usr/java/jdk1.8.0_171-amd64
安装后无需配置环境变量,java指令和javac指令是可以使用的,其相关安装信息在/usr/java路径下
注意:为了方便依赖于java的相关应用的配置,我们也可以配置环境变量,在/etc/profile详情见2.2解压安装
2.2解压安装:
· 准备jdk-8u171-linux-x64.tar.gzhttp://www.oracle.com/technetwork/java/javase/downloads/index.html(可以选择需要的版本)
· 开始安装
创建安装路径
[root@localhost ~]# mkdir /usr/java
将压缩文件解压到安装路径
[root@localhost ~]# tar -xzf /home/mario/Downloads/jdk-8u171-linux-x64.tar.gz -C /usr/java/
配置环境变量
[root@localhost ~]# vim /etc/profile
添加内容如下
export JAVA_HOME=/usr/java/jdk1.8.0_171
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
重新加载文件
[root@localhost ~]# source /etc/profile
· 安装后检测java指令、javac指令可以使用
【注】参见https://blog.csdn.net/gongxifacai_believe/article/details/53081205(在此表示感谢)
(1)授权协议的不同
(2)OpenJDK不包含Deployment(部署)功能
(3)OpenJDK源代码不完整
(4)部分源代码用开源代码替换
(5)OpenJDK只包含最精简的JDK
(6)不能使用Java商标
CentOS下Java的安装与环境配置的更多相关文章
- CentOS下通过yum安装svn及配置
CentOS下通过yum安装svn及配置 1.环境centos5.5 2.安装svnyum -y install subversion 3.配置 建立版本库目录mkdir /www/svndata s ...
- Windows下Java JDK安装和环境变量配置
[Java攻城狮学习路线](http://www.cnblogs.com/apollospotatolikett/p/8665123.html 1.JDK下载 下载地址:http://www.orac ...
- WIN 10环境下JDK的安装和环境配置
在做测试的过程中,诸如Selenium.Appium.Macaca.Airtest.RobotFramework.Jmeter等框架或工具都需要用到一样基础的环境JAVA JDK.最近刚好换了电脑,就 ...
- CentOS 下源码安装LAMP环境
一.简介 什么是LAMP LAMP是一种Web网络应用和开发环境,是Linux, Apache, MySQL, Php/Perl的缩写,每一个字母代表了一个组件,每个组件就其本身而言都是在它所代 ...
- windows系统下简单nodejs安装及环境配置
相信对于很多关注javascript发展的同学来说,nodejs已经不是一个陌生的词眼,这里不想谈太多的nodejs的相关信息.只说一下,windows系统下简单nodejs环境配置 相信 ...
- Windows下node.js安装及环境配置
1. 安装 官网下载node.js的安装版,一路next,中间可以自定义安装路径 完成后安装目录内容如下 cmd下检查是否安装成功 新版Node.js已自带npm,所以安装Node.js时会一起安装, ...
- LINUX系统下Java和Scala的环境配置
最近,笔者在研究一个有关“自然语言处理”的项目,在这个项目中,需要我们用Spark进行编程.而Spark内核是由Scala语言开发的,所以在使用Spark之前,我们必须配置好Scala,而Scala又 ...
- Windows平台下Java,tomcat安装与环境配置
问题描述:在Windows下面做Java web相关的项目的时候,Java和tomcat是基础,这里记载一下Java环境的配置以及tomcat的安装和配置. 使用工具:Windows.jdk安装包.t ...
- linux下svn客户端安装及环境配置(转)
一. 源文件编译安装.源文件共两个,为: 1. 下载subversion源文件 subversion-1.6.1.tar.gz http://d136.d.iask.com/fs/800/1 ...
随机推荐
- golang简介
GO语言是Google于2009年推出的一门新的系统编程语言 特点: 静态编译 垃圾回收 简洁的符号和语法 平坦的类型系统 基于CSP的并发模型 高效简单的工具链 丰富的标准库 为什么选择go语言 编 ...
- 并行开发 1.Parallel
原文:8天玩转并行开发——第一天 Parallel的使用 随着多核时代的到来,并行开发越来越展示出它的强大威力,像我们这样的码农再也不用过多的关注底层线程的实现和手工控制, 要了解并行开发,需要先了解 ...
- JS面向对象——组合使用构造函数模型与原型模型
该模型为创建自定义类型最常用的方式. <!DOCTYPE html> <html> <head> <title>组合使用构造函数模型和原型模型</ ...
- IDEA中添加自定义的方法快捷方式
IDEA中快速添加自己自定义的方法方法,想要什么快捷方法都行 作为一个从MyEclipse转IDEA的程序员,原来写main就能补全main方法,写syso就能补全System.out.println ...
- RabbitMQ ——四种ExChange及完整示例
RabbitMQ常用的Exchange Type有fanout.direct.topic.headers这四种,下面分别进行介绍. 这四种类的exchange分别有以下一些属性,分别是: name:名 ...
- 卷积神经网络CNN原理以及TensorFlow实现
在知乎上看到一段介绍卷积神经网络的文章,感觉讲的特别直观明了,我整理了一下.首先介绍原理部分. [透析] 卷积神经网络CNN究竟是怎样一步一步工作的? 通过一个图像分类问题介绍卷积神经网络是如何工作的 ...
- Object.assign()遇到的问题分析
概念 Object.assign() 方法可以把任意多个的源对象自身的可枚举属性拷贝给目标对象,然后返回目标对象.语法如下: Object.assign(target, ...sources) Obj ...
- 【LeetCode】链表 linked list(共34题)
[2]Add Two Numbers (2018年11月30日,第一次review,ko) 两个链表,代表两个整数的逆序,返回一个链表,代表两个整数相加和的逆序. Example: Input: ( ...
- python 模仿 C/C++ 结构体
import struct from ctypes import * class MyStruct(Structure): _fields_ = [ ("v1", c_char), ...
- 爬虫技术:scrapy 知识点一
---恢复内容开始--- 1.scrapy框架 每一步的解释: step1:引擎从爬虫器获取要爬行的初始请求. step2:引擎在调度程序中调度请求,引擎把这个初始请求传递给调度器,并向调度器索要下一 ...