Java世界

学习笔记

常用链接

统计

积分与排名

天籁村

新华网

雅虎

最新评论

Linux下JDK的安装详解

Linux下JDK的安装详解
一,安装前的准备:
1,Linux版本:我的是(企业版,至于红帽9已经不能得到升级和技术支持,所以现在都用企业版。):
[root@tpwb /]# uname -r
2.6.9-34.EL(版本内核)
2,JDK版本:j2sdk-1_4_2_04-linux-i586-rpm.bin,(大小:32.7M)
当然你也可以去
http://java.sun.com/
下载其他的版本。(这里建议下载RPM自解压格式
Linux Platform的JDK,RPM in self-extracting file。也就是我现在的版本,安装方便,直接。)
也可到我网吧主页下载
http://www.tpwb.cn

3,远程软件
SecureCRT5,去百度搜索一下多的事。也可以从我网吧的网页下载。
http://www.tpwb.cn
上面也有如何使用这款软件的说明。
4,命令术语的了解:
要用到的命令:ls,cd,chmod,rpm,vi,su,reboot
术语:属主,同组人。
关于linux基础知识你现在可以看我的另一篇文章"linux基础知识".应该说比较详细.
二,JDK的安装
安装前推荐一个网址,上面也有关于JDK安装的信息,可以作为参考。
http://zhidao.baidu.com/question/16233157.html
下面开始了:
首先看一下linux安装前的状态
1,这是usr目录下的文件
[root@tpwb usr]# ls
bin  games    kerberos  libexec  lost+found  share  tmp
etc  include  lib       local    sbin        src    X11R6
这是j2sdk-1_4_2_04-linux-i586-rpm.bin的权限
2,这是root对j2sdk-1_4_2_04-linux-i586-rpm.bin所拥有的权限
[root@tpwb tp]# ls -l
total 33612
drwx------  3 tp   tp       4096 Jan 18 23:04 Desktop
-rw-r--r--  1 root root 34363042 Sep 16 22:46 j2sdk-1_4_2_04-linux-i586-rpm.bin

3,下面开始安装。
[root@tpwb usr]# cd /home/tp
[root@tpwb tp]# ls
Desktop  j2sdk-1_4_2_04-linux-i586-rpm.bin
我把j2sdk-1_4_2_04-linux-i586-rpm.bin放在我的用户(tp)目录下,你也可以放在其他地方。
简单的建立用户命令为:
[root@tpwb ~]# useradd tp
这时就会在/home/ 目录下产生一个tp文件夹.
第一部:
[root@tpwb tp]#chomd 755 j2sdk-1_4_2_04-linux-i586-rpm.bin
chomd命令用于更改操作权限,意思是:只有属主有读取,写入和执行的权限,同组人和其他人只有读取和执行的权限。
755是数值的表示方式,字符为:-rwxr-xr-x
如果你对linux命令,属主,同组人等术语还不了解的话,可以查看上面推荐网址:
[root@tpwb tp]# ls -l
total 33612
drwx------  3 tp   tp       4096 Jan 18 23:04 Desktop
-rwxr-xr-x 1 root root 34363042 Sep 16 22:46 j2sdk-1_4_2_04-linux-i586-rpm.bin
大家可以看一下前后的变化。
先在root用户拥有了对j2sdk-1_4_2_04-linux-i586-rpm.bin的所有权限。
第二部:
[root@LinuxServer rpm]# ./j2sdk-1_4_2_04-linux-i586-rpm.bin
我们现在要执行这个j2sdk-1_4_2_04-linux-i586-rpm.bin二进制可执行程序。
./表示当前目录,这是因为linux的默认搜索目录里没有当前目录,所以如果你在当前目录需要执行程序就要加上路径,./用全路径代替也是可以的。
如:[root@tpwb tp]# /home/tp/j2sdk-1_4_2_04-linux-i586-rpm.bin 效果是一样的。
这时会有一段Sun的协议,敲几次空格键,当询问是否同意的时候,敲yes就可以了。
              Sun Microsystems, Inc.
          Binary Code License Agreement
                   for the
JAVATM 2 SOFTWARE DEVELOPMENT KIT (J2SDK), STANDARD
EDITION, VERSION 1.4.2_X
...
Do you agree to the above license terms? [yes or no] 按Y键确定。
会出现下面的画面:
Checksumming...
0
0
Extracting...
UnZipSFX 5.40 of 28 November 1998, by Info-ZIP (Zip-Bugs@lists.wku.edu).
  inflating: j2sdk-1_4_2_06-linux-i586.rpm  
Done.
这时生成一个RPM文件:j2sdk-1_4_2_06-linux-i586.rpm  这个才是真正的主程序安装包
[root@tpwb tp]# ls
Desktop  j2sdk-1_4_2_04-linux-i586.rpm j2sdk-1_4_2_04-linux-i586-rpm.bin
第三部:
[root@tpwb tp]# rpm -ivh j2sdk-1_4_2_04-linux-i586.rpm
Preparing...                ########################################### [100%]
   1:j2sdk                  ########################################### [100%]
rpm命令专门用于安装RPM包。想了解更详细的命令,可以查看上面推荐网址:
下面我们在来看一下usr目录
[root@tpwb tp]# ls /usr
bin  games    java      lib      local       sbin   src  X11R6
etc  include  kerberos  libexec  lost+found  share  tmp
很明显多了一个java
第四部.设置环境变量
我想到这的话,可能有人会问,为什么要设置环境变量。
提供一个网址,上面说的比较详细:
总体来说就是让运行的JAVA命令能找到JAVA的目录路径,知道它安装到哪了。
通常都喜欢用export命令直接在shell下设置
[root@tpwb tp]# export JAVA_HOME=/usr/java/j2sdk1.4.2_06
[root@tpwb tp]# export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
[root@tpwb tp]# export PATH=$PATH:$JAVA_HOME/bin
当然这样设置环境变量是可以生效的,但是只对当前shell生效。如果从另外一个shell登陆,将不能使用刚才设置的变量。
所以最好的方法还是修改.bashrc文件。
.bashrc是个隐含文件。需要ls –a来看
[root@tpwb tp]# ls -a
.              .bashrc .gconfd          .ICEauthority                      .qt               .zshrc
..             Desktop  .gnome           j2sdk-1_4_2_04-linux-i586.rpm      .rhn-applet
.bash_history  .dmrc    .gnome2          j2sdk-1_4_2_04-linux-i586-rpm.bin  .rhn-applet.conf
.bash_logout   .emacs   .gnome2_private  .kde                               test.class
.bash_profile  .gconf   .gtkrc           .mcop                              
在下面加入
export JAVA_HOME=/usr/java/j2sdk1.4.2_04
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin
[root@tpwb tp]# vi .bashrc
# .bashrc

# User specific aliases and functions

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi
export JAVA_HOME=/usr/java/j2sdk1.4.2_04
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin

vi命令用于编辑文本。wq保存退出. 想了解更详细的命令,可以查看上面推荐网址

当然也可以通过更改/etc/profile来实现,不过不推荐这么做,因为这样的设置将对所以用户的shell都生效,对系统安全会产生影响。
下面来验证一下变量设置是否生效
设置完环境变量最好重起一下,不然看不到效果。
[root@tpwb tp]# reboot

Broadcast message from root (pts/0) (Fri Jan 19 16:51:26 2007):

The system is going down for reboot NOW!
我们来查看一下
[root@tpwb tp]# echo $JAVA_HOME

[root@tpwb tp]#

看不到,奇怪!!呵呵
细心的朋友应该可以看到,我所改的.bashrc文件,它本身在tp用户下,所以只有tp用户可以拥有java的环境变量。
在来看一下。
[root@tpwb tp]# su tp
[tp@tpwb ~]$ echo $JAVA_HOME
/usr/java/j2sdk1.4.2_04
[tp@tpwb ~]# echo $CLASSPATH
:/usr/java/j2sdk1.4.2_04/lib:/usr/java/j2sdk1.4.2_04/jre/lib
[tp@tpwb ~]#echo $PATH
/usr/java/j2sdk1.4.2_04/bin:/usr/java/j2sdk1.4.2_04/jre/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/sbiusr/local/sbin:/usr/local/bin:/n:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/bin:/root/bin

如果想要root用户或者其他用户也可以怎么办呢?
下面只介绍root用户如何拥有环境变量。其他用户和tp用户设置是一样的。
[tp@tpwb ~]$ su
Password:
[root@tpwb ~]# ls
anaconda-ks.cfg  install.log  install.log.syslog
因为.bashrc是隐含文件所以:
[root@tpwb ~]# ls -a
.                .bash_history  .bashrc  .gconfd      install.log.syslog
..               .bash_logout   .cshrc   .gtkrc       .tcshrc
anaconda-ks.cfg  .bash_profile  .gconf   install.log  .viminfo

[root@tpwb ~]# vi .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi
export JAVA_HOME=/usr/java/j2sdk1.4.2_04
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin
同样在下面加入即可。
重起一下。
在来看一下
[root@tpwb tp]# echo $JAVA_HOME
/usr/java/j2sdk1.4.2_04
[root@tpwb ~]# echo $CLASSPATH
:/usr/java/j2sdk1.4.2_04/lib:/usr/java/j2sdk1.4.2_04/jre/lib
[root@tpwb ~]# echo $PATH
/usr/java/j2sdk1.4.2_04/bin:/usr/java/j2sdk1.4.2_04/jre/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/sbiusr/local/sbin:/usr/local/bin:/n:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/bin:/root/bin
[root@tpwb ~]# java -version
java version "1.4.2_04"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_04-b05)
Java HotSpot(TM) Client VM (build 1.4.2_04-b05, mixed mode)

呵呵,是不是看到了。
第五部(最后一部)。测试

[root@tpwb tp]# vi test.java
class test
{
       public static void main(String[] args)
       {
              System.out.println("welcome to tpwb!");
       }
}

保存退出,下面来编译、执行;
[root@tpwb tp]# javac test.java
[root@tpwb tp]# java test
welcome to tpwb!

posted on 2010-12-02 13:12 Rabbit 阅读(356) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航: