Linux CentOS7.0下JAVA安装和配置环境变量
一.前言:
CentOS7.0虽然自带JDK1.7和1.8,运行“java -version”命令也可以看到版本信息,但是jdk的安装环境不全,比如缺少tool.jar和dt.jar等,这就导致“javac”等这样的命令即便配置了环境变量也不能用,所以要重新安装jdk,并且配置环境变量,并解决“javac”命令不可用的问题。
二.下载安装JDK
1.CentOS下,首先让当前用户获取root权限,打开终端输入命令:
su root
- 1
2.查看可安装的JDK版本:
yum search java-1.7
- 1
在查询结果列表如下:
java-1.7.0-openjdk.x86_64 : OpenJDK Runtime Environment
java-1.7.0-openjdk-accessibility.x86_64 : OpenJDK accessibility connector
java-1.7.0-openjdk-demo.x86_64 : OpenJDK Demos
java-1.7.0-openjdk-devel.x86_64 : OpenJDK Development Environment
java-1.7.0-openjdk-headless.x86_64 : The OpenJDK runtime environment without audio and video support
java-1.7.0-openjdk-javadoc.noarch : OpenJDK API Documentation
java-1.7.0-openjdk-src.x86_64 : OpenJDK Source Bundle
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
3.安装这一款,命令:
yum -y install java-1.7.0-openjdk-devel.x86_64
- 1
安装完成提示:
已安装:
java-1.7.0-openjdk-devel.x86_64 1:1.7.0.141-2.6.10.1.el7_3
作为依赖被升级:
java-1.7.0-openjdk.x86_64 1:1.7.0.141-2.6.10.1.el7_3 java-1.7.0-openjdk-headless.x86_64 1:1.7.0.141-2.6.10.1.el7_3 nspr.x86_64 0:4.13.1-1.0.el7_3 nss.x86_64 0:3.28.4-1.2.el7_3
nss-sysinit.x86_64 0:3.28.4-1.2.el7_3 nss-tools.x86_64 0:3.28.4-1.2.el7_3 nss-util.x86_64 0:3.28.4-1.0.el7_3
完毕!
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
记住上面“已安装”后面的文件夹名称,不要搞混了。我们用此文件所在的路径作为JAVA_HOME。切记!
4.安装结束后,浏览下安装后的目录:
JDK安装在/usr/lib/jvm/文件夹下。在这个文件夹下有多个JDK版本,通过已安装成功的提示信息里面的JDK版本,找到我们刚安装的版本文件夹。
如:我这里找到新安装的JDK文件夹是:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64
cd /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64/lib
ls
- 1
- 2
- 3
查询结果:
amd64 ct.sym dt.jar ir.idl jconsole.jar jexec orb.idl sa-jdi.jar tools.jar
- 1
- 2
终于见到了久违的tool.jar 和dt.jar包。因为centOS 7.0自带的JDK压根就没有这些jar包,所以不管你环境变量配置正确与否,“javac”命令也不能用,因为这个命令依赖tool.jar这个jar包。
5.接下来配置环境变量:
①获取JDK的安装路径:
第四步中,我们所在的文件夹是/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64/lib中。
输入下面两条命令(注意cd后有空格),获取到的就是JDK的安装目录:
cd .
pwd
- 1
- 2
- 3
这个路径,即:JAVA_HOME
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64
- 1
- 2
②使用命令编辑环境变量文件:
vim /etc/profile
- 1
Vim开文件后,键盘按“E”,进入编辑模式,然后按几下键“pagedown”,来到文件底部。
③将下面的JAVA_HOME修改为刚获取的JAVA_HOME路径,然后拷贝到文件底部。
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
- 1
- 2
- 3
解释:
- 只需要改第一行“export JAVA_HOME=”后的部分为你的JDK路径,注意末尾不要加“/”。其他都无需更改。
- exprot命令用于将shell变量输出为环境变量
- “:”冒号,linux中用于分割路径,Windows中用“;” 分割。,在此分割JAVA_HOME和其他环境变量($PATH)
- CLASSPATH中的 “.” 不能丢失。CLASSPATH指引到tools.jar,才可以在任意目录下用“javac”命令
④输入完成后,按键“ESC”切换到Vim的命令模式,输入命令(冒号,按住“SHIFT+:”即可),保存退出
:wq!
- 1
6.使环境变量立即生效命令:
source /etc/profile
- 1
7.检查环境变量是否配置成功:
在任意的文件路径下,终端输入命令:
javac
- 1
显示结果如下,环境变量配置成功:
[root@localhost java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64]# javac
用法: javac <options> <source files>
其中, 可能的选项包括:
-g 生成所有调试信息
-g:none 不生成任何调试信息
-g:{lines,vars,source} 只生成某些调试信息
-nowarn 不生成任何警告
-verbose 输出有关编译器正在执行的操作的消息
-deprecation 输出使用已过时的 API 的源位置
-classpath <路径> 指定查找用户类文件和注释处理程序的位置
-cp <路径> 指定查找用户类文件和注释处理程序的位置
-sourcepath <路径> 指定查找输入源文件的位置
-bootclasspath <路径> 覆盖引导类文件的位置
-extdirs <目录> 覆盖所安装扩展的位置
-endorseddirs <目录> 覆盖签名的标准路径的位置
-proc:{none,only} 控制是否执行注释处理和/或编译。
-processor <class1>[,<class2>,<class3>...] 要运行的注释处理程序的名称; 绕过默认的搜索进程
-processorpath <路径> 指定查找注释处理程序的位置
-d <目录> 指定放置生成的类文件的位置
-s <目录> 指定放置生成的源文件的位置
-implicit:{none,class} 指定是否为隐式引用文件生成类文件
-encoding <编码> 指定源文件使用的字符编码
-source <发行版> 提供与指定发行版的源兼容性
-target <发行版> 生成特定 VM 版本的类文件
-version 版本信息
-help 输出标准选项的提要
-A关键字[=值] 传递给注释处理程序的选项
-X 输出非标准选项的提要
-J<标记> 直接将 <标记> 传递给运行时系统
-Werror 出现警告时终止编译
@<文件名> 从文件读取选项和文件名
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
一.前言:
CentOS7.0虽然自带JDK1.7和1.8,运行“java -version”命令也可以看到版本信息,但是jdk的安装环境不全,比如缺少tool.jar和dt.jar等,这就导致“javac”等这样的命令即便配置了环境变量也不能用,所以要重新安装jdk,并且配置环境变量,并解决“javac”命令不可用的问题。
二.下载安装JDK
1.CentOS下,首先让当前用户获取root权限,打开终端输入命令:
su root- 1
2.查看可安装的JDK版本:
yum search java-1.7- 1
在查询结果列表如下:
java-1.7.0-openjdk.x86_64 : OpenJDK Runtime Environment
java-1.7.0-openjdk-accessibility.x86_64 : OpenJDK accessibility connector
java-1.7.0-openjdk-demo.x86_64 : OpenJDK Demos
java-1.7.0-openjdk-devel.x86_64 : OpenJDK Development Environment
java-1.7.0-openjdk-headless.x86_64 : The OpenJDK runtime environment without audio and video support
java-1.7.0-openjdk-javadoc.noarch : OpenJDK API Documentation
java-1.7.0-openjdk-src.x86_64 : OpenJDK Source Bundle
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
3.安装这一款,命令:
yum -y install java-1.7.0-openjdk-devel.x86_64- 1
安装完成提示:
已安装:
java-1.7.0-openjdk-devel.x86_64 1:1.7.0.141-2.6.10.1.el7_3 作为依赖被升级:
java-1.7.0-openjdk.x86_64 1:1.7.0.141-2.6.10.1.el7_3 java-1.7.0-openjdk-headless.x86_64 1:1.7.0.141-2.6.10.1.el7_3 nspr.x86_64 0:4.13.1-1.0.el7_3 nss.x86_64 0:3.28.4-1.2.el7_3
nss-sysinit.x86_64 0:3.28.4-1.2.el7_3 nss-tools.x86_64 0:3.28.4-1.2.el7_3 nss-util.x86_64 0:3.28.4-1.0.el7_3 完毕!- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
记住上面“已安装”后面的文件夹名称,不要搞混了。我们用此文件所在的路径作为JAVA_HOME。切记!
4.安装结束后,浏览下安装后的目录:
JDK安装在/usr/lib/jvm/文件夹下。在这个文件夹下有多个JDK版本,通过已安装成功的提示信息里面的JDK版本,找到我们刚安装的版本文件夹。
如:我这里找到新安装的JDK文件夹是:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64
cd /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64/lib ls- 1
- 2
- 3
查询结果:
amd64 ct.sym dt.jar ir.idl jconsole.jar jexec orb.idl sa-jdi.jar tools.jar
- 1
- 2
终于见到了久违的tool.jar 和dt.jar包。因为centOS 7.0自带的JDK压根就没有这些jar包,所以不管你环境变量配置正确与否,“javac”命令也不能用,因为这个命令依赖tool.jar这个jar包。
5.接下来配置环境变量:
①获取JDK的安装路径:
第四步中,我们所在的文件夹是/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64/lib中。
输入下面两条命令(注意cd后有空格),获取到的就是JDK的安装目录:
cd . pwd- 1
- 2
- 3
这个路径,即:JAVA_HOME
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64
- 1
- 2
②使用命令编辑环境变量文件:
vim /etc/profile- 1
Vim开文件后,键盘按“E”,进入编辑模式,然后按几下键“pagedown”,来到文件底部。
③将下面的JAVA_HOME修改为刚获取的JAVA_HOME路径,然后拷贝到文件底部。
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar- 1
- 2
- 3
解释:
- 只需要改第一行“export JAVA_HOME=”后的部分为你的JDK路径,注意末尾不要加“/”。其他都无需更改。
- exprot命令用于将shell变量输出为环境变量
- “:”冒号,linux中用于分割路径,Windows中用“;” 分割。,在此分割JAVA_HOME和其他环境变量($PATH)
- CLASSPATH中的 “.” 不能丢失。CLASSPATH指引到tools.jar,才可以在任意目录下用“javac”命令④输入完成后,按键“ESC”切换到Vim的命令模式,输入命令(冒号,按住“SHIFT+:”即可),保存退出
:wq!- 1
6.使环境变量立即生效命令:
source /etc/profile- 1
7.检查环境变量是否配置成功:
在任意的文件路径下,终端输入命令:
javac- 1
显示结果如下,环境变量配置成功:
[root@localhost java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el7_3.x86_64]# javac
用法: javac <options> <source files>
其中, 可能的选项包括:
-g 生成所有调试信息
-g:none 不生成任何调试信息
-g:{lines,vars,source} 只生成某些调试信息
-nowarn 不生成任何警告
-verbose 输出有关编译器正在执行的操作的消息
-deprecation 输出使用已过时的 API 的源位置
-classpath <路径> 指定查找用户类文件和注释处理程序的位置
-cp <路径> 指定查找用户类文件和注释处理程序的位置
-sourcepath <路径> 指定查找输入源文件的位置
-bootclasspath <路径> 覆盖引导类文件的位置
-extdirs <目录> 覆盖所安装扩展的位置
-endorseddirs <目录> 覆盖签名的标准路径的位置
-proc:{none,only} 控制是否执行注释处理和/或编译。
-processor <class1>[,<class2>,<class3>...] 要运行的注释处理程序的名称; 绕过默认的搜索进程
-processorpath <路径> 指定查找注释处理程序的位置
-d <目录> 指定放置生成的类文件的位置
-s <目录> 指定放置生成的源文件的位置
-implicit:{none,class} 指定是否为隐式引用文件生成类文件
-encoding <编码> 指定源文件使用的字符编码
-source <发行版> 提供与指定发行版的源兼容性
-target <发行版> 生成特定 VM 版本的类文件
-version 版本信息
-help 输出标准选项的提要
-A关键字[=值] 传递给注释处理程序的选项
-X 输出非标准选项的提要
-J<标记> 直接将 <标记> 传递给运行时系统
-Werror 出现警告时终止编译
@<文件名> 从文件读取选项和文件名
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
若提示,“bash: javac: 未找到命令…”,则说明配置失败,检查环境变量的路径是否正确,反复尝试下,祝你好运。
版权声明:欢迎转载,转载请注明出处。 https://blog.csdn.net/x541211190/article/details/74786393 - 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
若提示,“bash: javac: 未找到命令…”,则说明配置失败,检查环境变量的路径是否正确,反复尝试下,祝你好运。
Linux CentOS7.0下JAVA安装和配置环境变量的更多相关文章
- 【Java安装】配置环境变量
添加环境变量: JAVA_HOME D:\Program Files\Java\jdk1.8.0_131 classpath: .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\to ...
- win10下JDK安装,配置环境变量后报Error: could not open `C:\Program Files\Java\jre1.8.0_112\lib\amd64\jvm.cfg'
把Path里面的%JAVA_HOME%/bin放在最前面.
- centos7系统下nginx安装并配置开机自启动操作
准备工作 我的centos7系统是最小化安装的, 缺很多库, 首先安装必须的运行库 ? 1 2 3 4 5 6 7 8 9 10 11 yum install wget gcc gcc-c++ pcr ...
- java基础学习总结一(java语言发展历史、jdk的下载安装以及配置环境变量)
最近一段时间计划复习一下java基础知识,使用的视频课程是尚学堂高淇老师的,上课过程中的心得体会直接总结一下,方便以后复习. 一:计算机语言的发展 1:机器语言,最原始的语言,主要有“01”构成,最早 ...
- Java基础学习总结一(Java语言发展历史、JDK下载安装以及配置环境变量)
最近一段时间计划复习一下java基础知识,使用的视频课程是尚学堂高淇老师的,上课过程中的心得体会直接总结一下,方便以后复习. 一:计算机语言的发展 1:机器语言,最原始的语言,主要有“01”构成,最早 ...
- JDK和TOMCAT的安装与配置环境变量
一.JDK该怎么安装与配置环境变量 步骤1.安装JDK选择安装目录,安装jdk1.8.0_77过程中会出现安装提示. 步骤2.(1)安装jdk随意选择目录 只需把默认安装目录\java之前的目录修改即 ...
- Xamarin.Forms教程下载安装JDK配置环境变量
Xamarin.Forms教程下载安装JDK配置环境变量 Xamarin.Form环境配置下载安装JDK JDK是编程Java程序必须的软件.也许有人会问我们用的C#为什么还有Java呢?这是因为我们 ...
- Golang入门(1):安装与配置环境变量的意义
摘要 在几年前学习Java的时候,环境的配置就会劝退一部分的初学者.而对于Golang来说,也需要从环境的配置开始学起.这一篇文章将从如何安装Golang开始讲起,随后将会提到Golang中的环境变量 ...
- jdk 安装过程配置环境变量 error 的解决过程
jdk 安装过程配置环境变量 error 的解决过程 问题背景: 我在安装 jdk 过程中在JAVA_HOME和path中添加路径后, cmd 中输入java 和javac均出现错误,因为之前在 D ...
随机推荐
- HDU 4597 Play Game(DFS,区间DP)
Play Game Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others) Total Sub ...
- Oracle等待事件之log file parallel write
log file parallel write表示等待 LGWR 向操作系统请求 I/O 开始直到完成 I/O.这种事件发生通常表示日志文件发生了I/O 竞争或者文件所在的驱动器较慢.这说明这种等待与 ...
- sklearn学习笔记(一)——数据预处理 sklearn.preprocessing
https://blog.csdn.net/zhangyang10d/article/details/53418227 数据预处理 sklearn.preprocessing 标准化 (Standar ...
- 2.wireshark分析之TCP协议(一)
(1) TCP是怎么样的协议? TCP是一种面向连接(连接导向)的.可靠的基于字节流的传输层通信协议.TCP将用户数据打包成报文段,它发送后启动一个定时器,另一端收到的数据进行确认.对失序的数据重新排 ...
- Day07 jdk5.0新特性&Junit&反射
day07总结 今日内容 MyEclipse安装与使用 JUnit使用 泛型 1.5新特性 自动装箱拆箱 增强for 静态导入 可变参数方法 枚举 反射 MyEclipse安装与使用(yes) 安装M ...
- umlの交互图
版权声明:本文为博主原创文章,若要转载请注明出处!^_^ https://blog.csdn.net/u010892841/article/details/24920155 前面介绍了uml的非常多种 ...
- centos Linux下磁盘管理 parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpfs ,nr_inodes, LVM,传统方式扩容文件系统 第七节课
centos Linux下磁盘管理 parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpf ...
- java基础语法 数组
数组是相同数据类型元素的集合 数组本身是引用数据类型,即对象.但是数组可以存储基本数据类型,也可以存储引用数据类型. 在java中如果想要保存一组基本类型的数据,使用数组:如果想保存一组对象或者其 ...
- python selenium 安装与 chromedriver安装
安装 pip install selenium 安装完成之后运行脚本,如果没报错那ok.但是很不幸运,我报错啦.(本人使用ubuntu16.04,python2,or python3) 贴出我的报错: ...
- BackgroundWorker+ProgressBar+委托 实现多线程、进度条
上文在<C# 使用BackgroundWorker实现WinForm异步>介绍了如何通过BackgroundWorker实现winForm异步通信,下面介绍如何通过BackgroundWo ...