按:我们身处一个信息爆炸的年代,当有事不决时,打开搜索引擎瞬息间就能得到海量的答案。但是,这未必会让你的问题迎刃而解,因此很多“答案”会把你引向错误的方向,浪费你的时间。希望搜索引擎能有所改进,对明确的问题只给出唯一的标准答案就好了,因为错误的答案再多有什么用呢,经历过高考的都知道答不到点子上乱凑字数是无济于事的,希望谷歌百度的程序员们能好好想想。好了,下面进入正题。

任务,将jdk-7u25-linux-i586.rpm安装在Red Hat Linux Fedora 8机器上,并以它为新的JDK。

环境:Linux version 2.6.23.1-42.fc8,gcc version 4.1.2 20070925

第一步,去下面地址寻找并下载jdk-7u25-linux-i586.rpm。

http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

第二步,将dk-7u25-linux-i586.rpm用U盘拷贝到Fedora8所在机器上,Fedora8比较smart,U盘插上一会就认出来了,不像原来Linux7.2加载任何外联设备都要mount,拿走再unmount,特烦人特耽误事,于是将文件拷贝到某个目录下,我本地是/home/usrname。

第三步,在/home/usrname下执行rpm -ivh jdk-7u25-linux-i586.rpm,系统报error:Can't create transaction lock on /var/lib/rpm/_db.000,让人一头雾水。于是,换root用户执行rpm -ivh jdk-7u25-linux-i586.rpm试试,诶,这回顺利开始安装了。这报错信息怎么和用户权限没关系呢?看来Linux报错信息和DOS报错信息一样,凡是用C做底层的软件报错都一个尿性。完成后,新的JDK被安到了/usr/java下,你可以去查看查看。

第四步,执行java -version,显示build 1.7.0-b21字样,说明安装初步成功了。其实这个还不能算是一步,只是对前面步骤的检验。

但是,以上步骤还只是成功了一半,我被汗牛充栋的网文误导了不少时间后,才总结出下面正确的步骤。

第五步,用VI修改/etc/profile,在末尾处添加这样一段:
export JAVA_HOME=/usr/java/jdk1.7.0_25
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

这里相当于我们在Win系统中环境变量的走法。先是设置JAVA_HOME,再是CLASSPATH和PATH。可恨有些大站里面的网文,连这三个单词都搞出拼写错误。有些误导网文有潜在BUG,到后面就运行不正常了,需要注意。

第六步,完成后,这些变量不会立即生效,你可以reboot机器,这比较浪费时间,也不推荐。最好可以执行命令 #source profile,注意是在/etc目录下以root用户来执行,执行完这些变量就设置好了。

你可以分别执行echo $JAVA_HOME,echo $CLASSPATH,$echo $PATH这三个命令,以确认它们设置完了。

[root@localhost etc]# echo $JAVA_HOME
/usr/java/jdk1.7.0_25
[root@localhost etc]# echo $PATH
/usr/java/jdk1.7.0_25/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/java/jdk1.7.0_25/bin:/root/bin:/usr/java/jdk1.7.0_25/bin
[root@localhost etc]# echo $CLASSPATH
.:/usr/java/jdk1.7.0_25/lib/dt.jar:/usr/java/jdk1.7.0_25/lib/tools.jar

另外执行java -version的效果如下:

[root@localhost etc]# java -version
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15) 注意这里已经与第四步不同了。

第七步,用VI或其它文本编辑器做一个java类,里面输出一条文字,类似下面的类:

class Hello{
    public static void main(String[] args){
         System.out.println("Hello!World");
    }
}

第八步,用命令#javac Hello.java生成Hello.class,生产后用ls查看下。

第九步,用命令#java Hello,如果终端里输出Hello!World,那就说明类执行正确,表明JDK安装完全成功了。这一步才是JDK安装完全成功的标志!之前java -version ,java,javac的执行效果都不能作数的,有些书籍网文把它们的输出当JDK安装成功标志,这是很不对的。

注意事项:

1.安装前需要检查系统是否已经安装了其它版本的JDK,可以参考以下流程检查:

(来自http://www.th7.cn/system/lin/201307/42216.shtml)

[root@localhost /]# java -version

java version "1.4.2"

gij (GNU libgcj) version 4.1.2 20080704 (Red Hat 4.1.2-51)

Copyright (C) 2006 Free Software Foundation, Inc.

This is free software; see the source for copying conditions. There is NO

warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

查看自带的JDK的相关信息

[root@getlnx06 ~]# rpm -qa | grep gcj

libgcj-4.1.2-51.el5

java-1.4.2-gcj-compat-1.4.2.0-40jpp.115

libgcj-4.1.2-51.el5

卸载自带的JDK的信息

[root@localhost /]# rpm -e --nodeps java-1.4.2-gcj-compat-1.4.2.0-40jpp.115

2.无论是Win版本还是Linux版本的JDK,手工添加修改JAVA_HOME,CLASSPATH,PATH都是必须的。

3.JDK的安装是否成功,标志是以新的JDK编译执行JAVA类,而不是JAVA -version和弄和弄就行的。

好了,就到这里,如果上文有什么问题,请你留言。

在Fedora8上安装jdk-7u25-linux-i586.rpm的步骤的更多相关文章

  1. Linux上安装jdk,mysql

    1.准备工作 一台纯净的Linux系统需要先安装一些依赖才能安装jdk等 rpm: 本地添加安装程序:rpm -ivh 程序名 本地查看程序: rpm -qa 本地卸载程序: rpm -e --nod ...

  2. Linux+Redis实战教程_Linux上安装jdk,mysql,tomcat_安装jdk

    1. Linux上安装jdk,mysql,tomcat[重点] Windows 控制面板 添加/卸载程序 进行程序的安装.更新.卸载.查看 rpm命令:相当于windows的添加/卸载程序 进行程序的 ...

  3. 【Linux】CentOS7上安装JDK 和卸载 JDK 【rpm命令的使用】

    之前有过一篇在CentOS7上安装JDK的文章:http://www.cnblogs.com/sxdcgaq8080/p/7492426.html 在这里又说一次,是要使用rpm命令安装JDK的rpm ...

  4. centos上安装jdk环境

    老沙采用的环境是centos 6.5 64位服务器.在linux上安装jdk环境都很多中方式,这里讲解下手工进行安装并进行环境变量配置. 首先需要下载一个64位版本的linux,可以去oracle官网 ...

  5. 在Ubuntu16.04.4上安装jdk

    在Ubuntu16.04.4上安装jdk 一.安装步骤     1.下载jdk安装包     首先我们在oracle官网上下载jdk-8u161-linux-x64.tar.gz,当然也可以下载其他版 ...

  6. 在Ubuntu16.04.4和Windows10上安装jdk

    在Ubuntu16.04.4和Windows10上安装jdk 一.在Ubuntu16.04.4上安装jdk  1.下载jdk安装包     首先我们在oracle官网上下载jdk-8u161-linu ...

  7. 在同一个硬盘上安装多个 Linux 发行版及 Fedora 21 、Fedora 22 初体验

    在同一个硬盘上安装多个 Linux 发行版 以前对多个 Linux 发行版的折腾主要是在虚拟机上完成.我的桌面电脑性能比较强大,玩玩虚拟机没啥问题,但是笔记本电脑就不行了.要在我的笔记本电脑上折腾多个 ...

  8. 在Ubuntu上安装JDK、Ant、Jmeter和Jenkins

    一.前期准备 1. 在win7下载VMware.Ubuntu(用迅雷下比较快) 2. 安装完VMware后新建虚拟机,选择iso: 3. 具体配置参考如下,至此Ubantu安装完成 二.在Ubuntu ...

  9. Ubuntu上安装jdk,Jboss

    Ubuntu上安装jdk 1.使用wget命令或sft方式从oracle官方下载tar.gz格式的jdk1.7,由于ubuntu不支持rpm安装,需要转换,所以不选择rpm格式的jdk 2.使用tar ...

  10. Linux 桌面玩家指南:11. 在同一个硬盘上安装多个 Linux 发行版以及为 Linux 安装 Nvidia 显卡驱动

    特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...

随机推荐

  1. maven工程代码关联源代码配置

    最近在学习dubbo,在maven构建完成后,需要关联查看一些依赖jar的源码,配置很简单,如下: 勾选windows-Preferences-Maven- Download Artifact Sou ...

  2. iOS-OC根据时间戳获取距离现在的状态(刚刚,分钟前,今天,昨天)

     iOS-OC根据时间戳获取距离现在的状态(刚刚,分钟前,今天,昨天) 获取时间戳 - (NSString *)distanceTimeWithBeforeTime:(double)beTime { ...

  3. 你能不用计算机来计算S=a+(a+1)+(a+2) + ...... + b的解的数目吗?

    S=a + (a + 1) + (a + 2) + ...... + b(其中a, b > 0) 现在我们要求,给定一个正整数S,求有多少种不同的<a,b>,使得上述的等式成立. 这 ...

  4. XSS的高级利用部分总结 -蠕虫

    XSS的高级利用部分总结 -蠕虫,HTTP-only,AJAX本地文件操作,镜象网页本帖最后由 racle 于 2009-5-30 09:19 编辑 XSS的高级利用总结 -蠕虫,HTTPONLY,A ...

  5. Html - 幽灵键盘

    Css ;text-align:center} #shurufa_gongneng,#shurufa_num_123,#shurufa_num_456,#shurufa_num_789{} #shur ...

  6. Html - 返回Top

    制作浮动top $(window).scroll( function() { var scrollValue=$(window).scrollTop(); scrollValue > 600 ? ...

  7. 《Lucene实战(第2版)》 配书代码在IDEA下的编译方法

    参考: hankcs http://www.hankcs.com/program/java/lucene-combat-2nd-edition-book-with-code-compiled-unde ...

  8. VSS错误自动修复

    公司项目开发源代码管理一直用vss,从vss6.0用到vss8.0(vss2005),在近两年的试用中碰到一些大大小小的问题:1:vss服务迁移,这个比较好办,直接将整个vss目录拷贝过去,加上相应的 ...

  9. HDU 1542 Atlantis(线段树扫描线+离散化求面积的并)

    Atlantis Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total S ...

  10. CSS架构

    CSS架构 有趣的是,我们通常不这样评判其他语言.一个Rails开发者不会因为他写的代码规范就认为他是一个好的开发者.因为这是最基本的.当然它必须是满 足规范,除此以外还要考虑其他方面:代码是否有可读 ...