CentOS 6.6下JDK1.7安装与配置(Linux)经典入门详解案例
最近用的linux较多,在网站找了一些关于linux环境下jdk安装的教程,过程是有的但是好多细节都没有表现出来,所以我花了点时间总结了一下,希望对大家都有帮助...
CentOS下JDK1.7安装与配置(Linux)
一、安装SUN公司的JDK之前先要检查系统中是否已经安装JDK。一般来说Centos系统默认会安装OpenJDK,但OpenJDK部分内容与SUN JDK不兼容,因此打算重新安装SUN JDK1.7来开发。
1.我们可以通过rpm命令查看OpenJDK具体版本信息
#rpm -qa |grep java
2.我们也可以通过rpm命令查看OpenJDK版本信息
# rpm -qa |grep jdk
3.当然,我们也可以查看当前系统使用的OpenJDK版本信息
#java –version
由上面我们可以知道,系统中默认安装了OpenJDK 1.7.0_65
二、通过上面的检查,我们发现系统中已经安装了OpenJDK 1.7.0_65,但OpenJDK部分内容与SUN JDK不兼容,因此打算重新安装SUN JDK1.7来开发。因此我们需要删除已安装的OpenJDK。
1. 删除安装的OpenJDK,可以用如下命令:
#rpm –e jdk相关 (普通删除命令,删除特定的包,如果遇到依赖,则无法删除)
#rpm -e –-nodeps jdk相关 (强制删除命令,忽略依赖,删除特定的包。如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除)
TIPS:这里的jdk相关指的是上个步骤中用查询命令查出来的jdk的相关文件。
(我这里还是建议大家使用强制删除命令)。
2.卸载OpenJDK
当你使用如下命令去卸载OpenJDK的时候如果出现如下错误(可能出现),具体原因马上知晓。
#rpm –e –nodeps java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el6_5.i686
这是什么原因呢?仔细一看我们使用的是普通用户登录,权限不够,所以我们要将普通切换为root用户进行进一步操作,切换命令为:
#su – root/sudo passwd root
由于su 对切换到超级权限用户root后,权限的无限制性,所以su并不能担任多个管理a.员所管理的系统。如果用su 来切换到超级用户来管理系统,也不能明确哪些工作是由哪个管理员进行的操作。特别是对于服务器的管理有多人参与管理时,最好是针对每个管理员的技术特长和 管理范围,并且有针对性的下放给权限,并且约定其使用哪些工具来完成与其相关的工作,这时我们就有必要用到 sudo。
b.通过sudo,我们能把某些超级权限有针对性的下放,并且不需要普通用户知道root密码,所以sudo 相对于权限无限制性的su来说,还是比较安全的,所以sudo 也能被称为受限制的su ;另外sudo 是需要授权许可的,所以也被称为授权许可的su;
c.sudo 执行命令的流程是当前用户切换到root(或其它指定切换到的用户),然后以root(或其它指定的切换到的用户)身份执行命令,执行完成后,直接退回到当前用户;而这些的前提是要通过sudo的配置文件/etc/sudoers来进行授权;
未使用su命令切换前用户状态:
使用su命令切换后用户状态:
#su – root
注意:切换为root用户时候会让你输入密码,这里不再详述…
好了已经切换好了那我们在用刚才同样的命令试一下呗:
#rpm –e –nodeps java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el6_5.i686
执行完这句话后,我们再用#rpm -qa |grep java查看一下卸载完了没有
#rpm -qa |grep java
看见没有?是不是OpenJDK1.7的哪个被卸载掉了?
那么我们紧接着用同样的方式把剩下的两个卸载掉:
#rpm –e –nodeps java-1.6.0-openjdk-1.6.0.0-11.1.13.4.el6_5.i686
#rpm –e –nodeps tzdata- java-2014g-1.el6.noarch
好了到此为止,我们需要卸载的东西全部卸载完了,那么我们来验证一下是否全部卸载完成?
#rpm -qa |grep java
看见没?是不是全部没有了?
3. 接下来为了确保jdk已经彻底删除,还需要执行查询命令#find / -name jdk相关:
#find / -name jdk
#find / -name jre
#find / -name gcj
若查询出来还有参与目录,可以用# rm -rf 目录,将残余目录一个一个删除掉。
至此jdk的删除工作已完成。
三、下载并安装JDK
1.下载JDK
建议到http://www.oracle.com官网下载,我这里是32位操作系统因此找到指定的下载界面如图:
由于我要安装的是JDK7,因此我要到JDK7下载界面,根据自己需要下载JDK,我这里不再叙述。由上图我们可以看出Linux x86系统有两种形式的JDK,我们应该用哪一个呢?这个要根据你个人具体情况喽,我先来说一下这两种JDK(jdk-7u79-linux-i586.rpm/jdk-7u79-linux-i586.tar.gz)有什么不一样把!
简单来说:
rpm格式的是个安装包,能直接安装。
.tar.gz只是将文件打包,不能安装,相当于把多个文件放到一起打包。
详细点来说:
1、*.rpm形式的二进制软件包
安装:rpm -ivh *.rpm
卸载:rpm -e packgename
说明:RPM(RedHat Packge Manager)是RedHat公司出的软件包管理器,使用它可以很容易地对rpm形式的软件包进行安装、升级、卸载、验证、查询等操作,安装简单,而卸载时也可以将软件安装在多处目录中的文件删除干净,因此推荐初学者尽可能使用rpm形式的软件包。rpm的参数中-i是安装,-v是校验,-h是用散列符显示安装进度,*.rpm是软件包的文件名(这里的*.rpm特指*.src.rpm以外的以rpm为后缀的文件);参数-e是删除软件包,packgename是软件包名,与软件包的文件名有所区别,它往往是文件名中位于版本号前面的字符串,例如apache-3.1.12-i386.rpm和apache-devel-3.1.12-i386.rpm是软件包文件名,它们的软件包名称分别是apache和apache-devel。更多的rpm参数请自行参看手册页:man rpm。
2、*.tar.gz/*.tgz、*.bz2形式的二进制软件包
安装:tar zxvf *.tar.gz 或 tar yxvf *.bz2
卸载:手动删除
说明:*.tar.gz/*.bz2形式的二进制软件包是用tar工具来打包、用gzip/bzip2压缩的,安装时直接解包即可。对于解压后只有单一目录的软件,卸载时用命令“rm -rf 软件目录名”;如果解压后文件分散在多处目录中,则必须一一手动删除(稍麻烦),想知道解压时向系统中安装了哪些文件,可以用命令“tar ztvf *.tar.gz”/“tar ytvf *.bz2”获取清单。tar的参数z是调用gzip解压,x是解包,v是校验,f是显示结果,y是调用bzip2解压,t是列出包的文件清单。更多的参数请参看手册页:man tar。
如果你更喜欢图形界面的操作,可以在X-Window下使用KDE的ArK压缩档案管理工具。
好了,对于这两种区别自己看看吧,自己找度娘,其实答案一大把!
我这里用的是32位tar.gz形式的,原因我就不多说了…
2.安装JDK
利用cp命令将下载好的jdk-7u75-linux-i586.tar复制到/opt目录并查看内容:
#cp jdk-7u79-linux-i586.tar.gz /opt/
利用解压命令解压:tar -zxvf jdk-7u79-linux-i586.tar.gz
# tar -zxvf jdk-7u79-linux-i586.tar.gz
3.解压完成后,紧接着我们就要开始配置全局环境变量了:
首先进入/etc/目录
#cd /etc/
利用vi编辑命令打开profile文件:
#vi profile
然后在最后加上以下信息(插入信息按i键):
插入完成后按Escà:wq!写入保存即可!
为了让/etc/profile文件修改后立即生效,可以使用如下命令:
#. /etc/profile
然后利用source命令使得配置生效:
#source /etc/profile
至此,我们距离成功已经不远了,现在我们只需要在/sbin目录下简历java的软连接,SUN JDK1.7的安装任务就可以完成啦!还等什么?赶紧的…
此时我们在shell中输入java命令,将提示/usr/bin中找不到java命令,那是因为我们还没为$JAVA_HOME/bin/java在/sbin目录下建立软链接。
因此我们只需要通过ln命令简历一个软连接即可:
# ln -s /opt/jdk1.7.0_67/bin/java /sbin/java
到这里SUN JDK1.7的安装已完成了!
4. 4.测试JDK
安装并配置好环境变量之后,接下来就要测试jdk是否安装正常了。
输入java -version或javac -version,若显示版本信息,则表示安装成功:
#java –version
如上可以看出,jdk已经安装成功。接下来我们再来测试一个简单的Hello XUHOUWEI!程序:
(1) 新建T1.java文件
(2) 添加以下代码:
按Escà:wq!写入保存即可!
(3) 编译,运行:
#javac T1.java
#java T1
由以上可以看出,jdk的编译运行都正常。
至此,jdk的安装顺利结束。
很幸运能够静下心来把这篇文章写出来,安装配置过程中如有问题很希望您能与我联系,
新浪微博:http://www.weibo.com/suqianxushouwei
博客园:http://www.cnblogs.com/Jasxu/ 微信号:Jasxu360
勇敢的人定可以创造奇迹!
CentOS 6.6下JDK1.7安装与配置(Linux)经典入门详解案例的更多相关文章
- CentOS 6.5 下HeartBeat的安装与配置
CentOS 6.5 下HeartBeat的安装与配置 参考网站: http://wenku.baidu.com/link?url=BvqJatdx1m12PLil-7YA1zkM0yUOEO8OnN ...
- Tomcat系列之服务器的安装与配置以及各组件详解
Tomcat系列之服务器的安装与配置以及各组件详解 大纲 一.前言 二.安装与配置Tomcat 三.Tomcat 目录的结构 四.Tomcat 配置文件 注,本文的测试的操作系统为CentOS 6.4 ...
- CentOS 7.5下KVM的安装与配置
由于没有物理机可用,在自己的VMware Workstation中CentOS 7.5下搭建完成. 首先查看VMware Workstation是否支持虚拟化,把红框内打钩即可. 虚拟化开启并安装Ce ...
- Linux、Windows下Redis的安装即Redis的基本使用详解
前言 什么是Redis Redis是一个基于内存的key-value结构数据库.Redis 是互联网技术领域使用最为广泛的存储中间件,它是「Remote Dictionary Service」的首字母 ...
- CentOS 6.3下PostgreSQL 的安装与配置
一.简介 PostgreSQL 是一种非常复杂的对象-关系型数据库管理系统(ORDBMS),也是目前功能最强大,特性最丰富和最复杂的自由软件数据库系统.有些特性甚至连商业数据库都不具备.这个起源于伯克 ...
- Linux——CentOS 6.3下PostgreSQL 的安装与配置
一.简介 PostgreSQL 是一种非常复杂的对象-关系型数据库管理系统(ORDBMS),也是目前功能最强大,特性最丰富和最复杂的自由软件数据库系统.有些特性甚至连商业数据库 都不具备.这个起源于伯 ...
- CentOS 6.3下NTP服务安装和配置
测试环境: NTPserver 192.168.1.252 NTPclient 192.168.1.251 准备工作: 关闭selinux: vi /etc/selinux/config SELINU ...
- CentOS 6.5下mysql的安装与配置
一.通过yum自动安装mysql yum install mysql-server my-client 二.初始化及相关配置 安装完mysql数据库以后,会发现会多出一个mysqld的服务,通过输入 ...
- Ubuntu下JDK1.8安装后配置环境变量
export JAVA_HOME=/dengyang/jdk1.8.0_56export JRE_HOME=$JAVA_HOME/jreexport CLASSPATH=.:$JAVA_HOME/li ...
随机推荐
- 数的计数(number)
数的计数(number) 题目描述 我们要求找出具有下列性质数的个数(包含输入的自然数n),先输入一个自然数n(n≤1000),然后对此自然数按照如下方法进行处理: (1)不作任何处理: (2)在它的 ...
- oracle数据库查询常用语句
1.查询SCOTT表中有多少表,并显示表的一些描述select * from all_tables WHERE owner='SCOTT' ; 2.查询oracle数据库版本select * from ...
- UILabel 详解
转自:http://blog.csdn.net/zhaopenghhhhhh/article/details/16331041 ·UILable是iPhone界面最基本的控件,主要用来显示文本信息.· ...
- 16级第一周寒假作业F题
Subsequence TimeLimit:1000MS MemoryLimit:65536K 64-bit integer IO format:%lld Problem Description A ...
- opencart配置mail服务
编辑mail配置,如下图所示 如果sever开启了SSL,则端口改成465 在Contant Us页面留言,发送成功则配置完成
- c#中控制不能从一个case标签贯穿到另一个case标签
每个非空的case标签都得以break结束,肯定是两个case之间少了一个break了
- tinkphp5.0 traits 的引入
Traits引入 ThinkPHP 5.0开始采用trait功能(PHP5.4+)来作为一种扩展机制,可以方便的实现一个类库的多继承问题. trait是一种为类似 PHP 的单继承语言而准备的代码复用 ...
- particles.js 一个非常酷炫的粒子动画库
GIT 地址:https://github.com/VincentGarreau/particles.js/ 效果:
- windows下egret环境搭建
作者:zccst 2,下载安装WebStorm(经了解是西欧捷克开发的,欧洲人对审美不够,所以界面不太好看,但是功能很强大) (1)遇到的问题是注册码问题,不过也很容易在网上找到. (2)如何打开已创 ...
- FreeRTOS初步认识
源:FreeRTOS初步认识 用了半天时间对FreeRTOS有了一个初步的认识,大概总结一下,其中混杂了系统实现和实际应用方面的问题. 现只是以应用为目的,实现方面待以后进一步研究. 1.FreeRT ...