最新消息:

CentOS 使用yum命令安装Java SDK(openjdk)

Linux运维 大步 21779浏览 0评论

如何(怎样)在CentOS 6.X 或 redhat 上使用安装JDK runtime environment (openjdk) ?

CentOS 6.X 和 5.X 自带有OpenJDK runtime environment  (openjdk)。它是一个在linux上实现开源的java 平台。CentOS  yum 命令 安装 Java SDK openjdk

centos linux JAVA(openjdk)软件包名
1.java-1.7.0-openjdk - OpenJDK Runtime Environment
2.java-1.7.0-openjdk-devel - OpenJDK Development Environment

输入以下命令,以查看可用的JDK软件包列表;
[root@dabu.info ~]# yum search java | grep -i --color JDK

输出类似下图:

centos-openjdk

centos-openjdk

在CentOS linux安装 JAVA SDK
在命令行终端以root用户 输入以下命令yum安装 OpenSDK :
[root@dabu.info ~]#yum install java-1.7.0-openjdk  java-1.7.0-openjdk-devel  #安装openjdk

输出如下:
Loaded plugins: downloadonly, fastestmirror, security
Loading mirror speeds from cached hostfile
 * base: mirror.wiredtree.com
 * epel: mirror.steadfast.net
 * extras: bay.uchicago.edu
 * updates: mirror.team-cymru.org
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package java-1.7.0-openjdk.x86_64 1:1.7.0.51-2.4.4.1.el6_5 will be installed
--> Processing Dependency: jpackage-utils >= 1.7.3-1jpp.2 for package: 1:java-1.7.0-openjdk-1.7.0.51-2.4.4.1.el6_5.x86_64
--> Processing Dependency: xorg-x11-fonts-Type1 for package: 1:java-1.7.0-openjdk-1.7.0.51-2.4.4.1.el6_5.x86_64
--> Processing Dependency: tzdata-java for package: 1:java-1.7.0-openjdk-1.7.0.51-2.4.4.1.el6_5.x86_64
--> Processing Dependency: rhino for package: 1:java-1.7.0-openjdk-1.7.0.51-2.4.4.1.el6_5.x86_64
--> Processing Dependency: libpulse.so.0(PULSE_0)(64bit) for package: 1:java-1.7.0-openjdk-1.7.0.51-2.4.4.1.el6_5.x86_64
--> Processing Dependency: libasound.so.2(ALSA_0.9.0rc4)(64bit) for package: 1:java-1.7.0-openjdk-1.7.0.51-2.4.4.1.el6_5.x86_64
--> Processing Dependency: libasound.so.2(ALSA_0.9)(64bit) for package: 1:java-1.7.0-openjdk-1.7.0.51-2.4.4.1.el6_5.x86_64
--> Processing Dependency: libpulse.so.0()(64bit) for package: 1:java-1.7.0-openjdk-1.7.0.51-2.4.4.1.el6_5.x86_64
--> Processing Dependency: libgif.so.4()(64bit) for package: 1:java-1.7.0-openjdk-1.7.0.51-2.4.4.1.el6_5.x86_64
--> Processing Dependency: libasound.so.2()(64bit) for package: 1:java-1.7.0-openjdk-1.7.0.51-2.4.4.1.el6_5.x86_64
--> Processing Dependency: libXtst.so.6()(64bit) for package: 1:java-1.7.0-openjdk-1.7.0.51-2.4.4.1.el6_5.x86_64
--> Running transaction check
---> Package alsa-lib.x86_64 0:1.0.22-3.el6 will be installed
---> Package giflib.x86_64 0:4.1.6-3.1.el6 will be installed
--> Processing Dependency: libSM.so.6()(64bit) for package: giflib-4.1.6-3.1.el6.x86_64
--> Processing Dependency: libICE.so.6()(64bit) for package: giflib-4.1.6-3.1.el6.x86_64
---> Package jpackage-utils.noarch 0:1.7.5-3.12.el6 will be installed
---> Package libXtst.x86_64 0:1.2.1-2.el6 will be installed
---> Package pulseaudio-libs.x86_64 0:0.9.21-14.el6_3 will be installed
--> Processing Dependency: libsndfile.so.1(libsndfile.so.1.0)(64bit) for package: pulseaudio-libs-0.9.21-14.el6_3.x86_64
--> Processing Dependency: libsndfile.so.1()(64bit) for package: pulseaudio-libs-0.9.21-14.el6_3.x86_64
--> Processing Dependency: libasyncns.so.0()(64bit) for package: pulseaudio-libs-0.9.21-14.el6_3.x86_64
---> Package rhino.noarch 0:1.7-0.7.r2.2.el6 will be installed
--> Processing Dependency: jline for package: rhino-1.7-0.7.r2.2.el6.noarch
---> Package tzdata-java.noarch 0:2013i-2.el6 will be installed
---> Package xorg-x11-fonts-Type1.noarch 0:7.2-9.1.el6 will be installed
--> Processing Dependency: ttmkfdir for package: xorg-x11-fonts-Type1-7.2-9.1.el6.noarch
--> Processing Dependency: ttmkfdir for package: xorg-x11-fonts-Type1-7.2-9.1.el6.noarch
--> Processing Dependency: mkfontdir for package: xorg-x11-fonts-Type1-7.2-9.1.el6.noarch
--> Processing Dependency: mkfontdir for package: xorg-x11-fonts-Type1-7.2-9.1.el6.noarch
--> Running transaction check
---> Package jline.noarch 0:0.9.94-0.8.el6 will be installed
---> Package libICE.x86_64 0:1.0.6-1.el6 will be installed
---> Package libSM.x86_64 0:1.2.1-2.el6 will be installed
---> Package libasyncns.x86_64 0:0.8-1.1.el6 will be installed
---> Package libsndfile.x86_64 0:1.0.20-5.el6 will be installed
--> Processing Dependency: libvorbisenc.so.2()(64bit) for package: libsndfile-1.0.20-5.el6.x86_64
--> Processing Dependency: libvorbis.so.0()(64bit) for package: libsndfile-1.0.20-5.el6.x86_64
--> Processing Dependency: libogg.so.0()(64bit) for package: libsndfile-1.0.20-5.el6.x86_64
--> Processing Dependency: libFLAC.so.8()(64bit) for package: libsndfile-1.0.20-5.el6.x86_64
---> Package ttmkfdir.x86_64 0:3.0.9-32.1.el6 will be installed
---> Package xorg-x11-font-utils.x86_64 1:7.2-11.el6 will be installed
--> Processing Dependency: libfontenc.so.1()(64bit) for package: 1:xorg-x11-font-utils-7.2-11.el6.x86_64
--> Processing Dependency: libXfont.so.1()(64bit) for package: 1:xorg-x11-font-utils-7.2-11.el6.x86_64
--> Running transaction check
---> Package flac.x86_64 0:1.2.1-6.1.el6 will be installed
---> Package libXfont.x86_64 0:1.4.5-3.el6_5 will be installed
---> Package libfontenc.x86_64 0:1.0.5-2.el6 will be installed
---> Package libogg.x86_64 2:1.1.4-2.1.el6 will be installed
---> Package libvorbis.x86_64 1:1.2.3-4.el6_2.1 will be installed
--> Finished Dependency Resolution
 
Dependencies Resolved
 
==================================================================================================
 Package                     Arch          Version                           Repository      Size
==================================================================================================
Installing:
 java-1.7.0-openjdk          x86_64        1:1.7.0.51-2.4.4.1.el6_5          updates         26 M
Installing for dependencies:
 alsa-lib                    x86_64        1.0.22-3.el6                      base           370 k
 flac                        x86_64        1.2.1-6.1.el6                     base           243 k
 giflib                      x86_64        4.1.6-3.1.el6                     base            37 k
 jline                       noarch        0.9.94-0.8.el6                    base            86 k
 jpackage-utils              noarch        1.7.5-3.12.el6                    base            59 k
 libICE                      x86_64        1.0.6-1.el6                       base            53 k
 libSM                       x86_64        1.2.1-2.el6                       base            37 k
 libXfont                    x86_64        1.4.5-3.el6_5                     updates        136 k
 libXtst                     x86_64        1.2.1-2.el6                       base            29 k
 libasyncns                  x86_64        0.8-1.1.el6                       base            24 k
 libfontenc                  x86_64        1.0.5-2.el6                       base            24 k
 libogg                      x86_64        2:1.1.4-2.1.el6                   base            21 k
 libsndfile                  x86_64        1.0.20-5.el6                      base           233 k
 libvorbis                   x86_64        1:1.2.3-4.el6_2.1                 base           168 k
 pulseaudio-libs             x86_64        0.9.21-14.el6_3                   base           462 k
 rhino                       noarch        1.7-0.7.r2.2.el6                  base           778 k
 ttmkfdir                    x86_64        3.0.9-32.1.el6                    base            43 k
 tzdata-java                 noarch        2013i-2.el6                       updates        147 k
 xorg-x11-font-utils         x86_64        1:7.2-11.el6                      base            75 k
 xorg-x11-fonts-Type1        noarch        7.2-9.1.el6                       base           520 k
 
Transaction Summary
==================================================================================================
Install      21 Package(s)
 
Total download size: 29 M
Installed size: 100 M
Is this ok [y/N]: y
Downloading Packages:
(1/21): alsa-lib-1.0.22-3.el6.x86_64.rpm                                   | 370 kB     00:00
(2/21): flac-1.2.1-6.1.el6.x86_64.rpm                                      | 243 kB     00:00
(3/21): giflib-4.1.6-3.1.el6.x86_64.rpm                                    |  37 kB     00:00
(4/21): java-1.7.0-openjdk-1.7.0.51-2.4.4.1.el6_5.x86_64.rpm               |  26 MB     00:02
(5/21): jline-0.9.94-0.8.el6.noarch.rpm                                    |  86 kB     00:00
(6/21): jpackage-utils-1.7.5-3.12.el6.noarch.rpm                           |  59 kB     00:00
(7/21): libICE-1.0.6-1.el6.x86_64.rpm                                      |  53 kB     00:00
(8/21): libSM-1.2.1-2.el6.x86_64.rpm                                       |  37 kB     00:00
(9/21): libXfont-1.4.5-3.el6_5.x86_64.rpm                                  | 136 kB     00:00
(10/21): libXtst-1.2.1-2.el6.x86_64.rpm                                    |  29 kB     00:00
(11/21): libasyncns-0.8-1.1.el6.x86_64.rpm                                 |  24 kB     00:00
(12/21): libfontenc-1.0.5-2.el6.x86_64.rpm                                 |  24 kB     00:00
(13/21): libogg-1.1.4-2.1.el6.x86_64.rpm                                   |  21 kB     00:00
(14/21): libsndfile-1.0.20-5.el6.x86_64.rpm                                | 233 kB     00:00
(15/21): libvorbis-1.2.3-4.el6_2.1.x86_64.rpm                              | 168 kB     00:00
(16/21): pulseaudio-libs-0.9.21-14.el6_3.x86_64.rpm                        | 462 kB     00:00
(17/21): rhino-1.7-0.7.r2.2.el6.noarch.rpm                                 | 778 kB     00:00
(18/21): ttmkfdir-3.0.9-32.1.el6.x86_64.rpm                                |  43 kB     00:00
(19/21): tzdata-java-2013i-2.el6.noarch.rpm                                | 147 kB     00:00
(20/21): xorg-x11-font-utils-7.2-11.el6.x86_64.rpm                         |  75 kB     00:00
(21/21): xorg-x11-fonts-Type1-7.2-9.1.el6.noarch.rpm                       | 520 kB     00:00
--------------------------------------------------------------------------------------------------
Total                                                             7.2 MB/s |  29 MB     00:04
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : libICE-1.0.6-1.el6.x86_64                                                     1/21
  Installing : 2:libogg-1.1.4-2.1.el6.x86_64                                                 2/21
  Installing : libSM-1.2.1-2.el6.x86_64                                                      3/21
  Installing : libXtst-1.2.1-2.el6.x86_64                                                    4/21
  Installing : jpackage-utils-1.7.5-3.12.el6.noarch                                          5/21
  Installing : alsa-lib-1.0.22-3.el6.x86_64                                                  6/21
  Installing : libfontenc-1.0.5-2.el6.x86_64                                                 7/21
  Installing : libXfont-1.4.5-3.el6_5.x86_64                                                 8/21
  Installing : 1:xorg-x11-font-utils-7.2-11.el6.x86_64                                       9/21
  Installing : giflib-4.1.6-3.1.el6.x86_64                                                  10/21
  Installing : flac-1.2.1-6.1.el6.x86_64                                                    11/21
  Installing : 1:libvorbis-1.2.3-4.el6_2.1.x86_64                                           12/21
  Installing : libsndfile-1.0.20-5.el6.x86_64                                               13/21
  Installing : libasyncns-0.8-1.1.el6.x86_64                                                14/21
  Installing : pulseaudio-libs-0.9.21-14.el6_3.x86_64                                       15/21
  Installing : jline-0.9.94-0.8.el6.noarch                                                  16/21
  Installing : rhino-1.7-0.7.r2.2.el6.noarch                                                17/21
  Installing : tzdata-java-2013i-2.el6.noarch                                               18/21
  Installing : ttmkfdir-3.0.9-32.1.el6.x86_64                                               19/21
  Installing : xorg-x11-fonts-Type1-7.2-9.1.el6.noarch                                      20/21
  Installing : 1:java-1.7.0-openjdk-1.7.0.51-2.4.4.1.el6_5.x86_64                           21/21
  Verifying  : pulseaudio-libs-0.9.21-14.el6_3.x86_64                                        1/21
  Verifying  : ttmkfdir-3.0.9-32.1.el6.x86_64                                                2/21
  Verifying  : tzdata-java-2013i-2.el6.noarch                                                3/21
  Verifying  : libXfont-1.4.5-3.el6_5.x86_64                                                 4/21
  Verifying  : libfontenc-1.0.5-2.el6.x86_64                                                 5/21
  Verifying  : flac-1.2.1-6.1.el6.x86_64                                                     6/21
  Verifying  : jline-0.9.94-0.8.el6.noarch                                                   7/21
  Verifying  : alsa-lib-1.0.22-3.el6.x86_64                                                  8/21
  Verifying  : 2:libogg-1.1.4-2.1.el6.x86_64                                                 9/21
  Verifying  : 1:libvorbis-1.2.3-4.el6_2.1.x86_64                                           10/21
  Verifying  : 1:xorg-x11-font-utils-7.2-11.el6.x86_64                                      11/21
  Verifying  : xorg-x11-fonts-Type1-7.2-9.1.el6.noarch                                      12/21
  Verifying  : libSM-1.2.1-2.el6.x86_64                                                     13/21
  Verifying  : libICE-1.0.6-1.el6.x86_64                                                    14/21
  Verifying  : 1:java-1.7.0-openjdk-1.7.0.51-2.4.4.1.el6_5.x86_64                           15/21
  Verifying  : rhino-1.7-0.7.r2.2.el6.noarch                                                16/21
  Verifying  : libasyncns-0.8-1.1.el6.x86_64                                                17/21
  Verifying  : giflib-4.1.6-3.1.el6.x86_64                                                  18/21
  Verifying  : libsndfile-1.0.20-5.el6.x86_64                                               19/21
  Verifying  : jpackage-utils-1.7.5-3.12.el6.noarch                                         20/21
  Verifying  : libXtst-1.2.1-2.el6.x86_64                                                   21/21
 
Installed:
  java-1.7.0-openjdk.x86_64 1:1.7.0.51-2.4.4.1.el6_5
 
Dependency Installed:
  alsa-lib.x86_64 0:1.0.22-3.el6                  flac.x86_64 0:1.2.1-6.1.el6
  giflib.x86_64 0:4.1.6-3.1.el6                   jline.noarch 0:0.9.94-0.8.el6
  jpackage-utils.noarch 0:1.7.5-3.12.el6          libICE.x86_64 0:1.0.6-1.el6
  libSM.x86_64 0:1.2.1-2.el6                      libXfont.x86_64 0:1.4.5-3.el6_5
  libXtst.x86_64 0:1.2.1-2.el6                    libasyncns.x86_64 0:0.8-1.1.el6
  libfontenc.x86_64 0:1.0.5-2.el6                 libogg.x86_64 2:1.1.4-2.1.el6
  libsndfile.x86_64 0:1.0.20-5.el6                libvorbis.x86_64 1:1.2.3-4.el6_2.1
  pulseaudio-libs.x86_64 0:0.9.21-14.el6_3        rhino.noarch 0:1.7-0.7.r2.2.el6
  ttmkfdir.x86_64 0:3.0.9-32.1.el6                tzdata-java.noarch 0:2013i-2.el6
  xorg-x11-font-utils.x86_64 1:7.2-11.el6         xorg-x11-fonts-Type1.noarch 0:7.2-9.1.el6
 
Complete!

在centos linux上设置JAVA_HOME environment variable(JAVA_HOME环境变量)

rhel 和 centos linux 使用yum命令后,将 OpenSDK 安装到/usr/lib/jvm/ 目录:
[root@dabu.info ~]# ls -l /usr/lib/jvm/

输出如下:
total 4
drwxr-xr-x. 3 root root 4096 Feb 24 17:00 java-1.7.0-openjdk-1.7.0.51.x86_64
lrwxrwxrwx. 1 root root   21 Feb 24 17:00 jre -> /etc/alternatives/jre
lrwxrwxrwx. 1 root root   27 Feb 24 17:00 jre-1.7.0 -> /etc/alternatives/jre_1.7.0
lrwxrwxrwx. 1 root root   38 Feb 24 17:00 jre-1.7.0-openjdk.x86_64 -> java-1.7.0-openjdk-1.7.0.51.x86_64/jre
lrwxrwxrwx. 1 root root   29 Feb 24 17:00 jre-openjdk -> /etc/alternatives/jre_openjdk

解释:输出的第二行的drwxr-xr-x.中的d表示是文件夹。其余的 l 表示链接

设置JAVA_HOME指向一个含有java可执行程序的目录(一般是在 bin/java中)。我们用cd 命令进入到jvm下唯一的一个目录中 java-1.7.0-openjdk-1.7.0.51.x86_64 ,而 jre-1.7.0-openjdk.x86_64 这个链接是指向  java-1.7.0-openjdk-1.7.0.51.x86_64 这个文件夹,所以,可以直接用export命令将 JAVA_HOME 指向 jre-1.7.0-openjdk.x86_64 这个链接。
即使用export命令:
[root@dabu.info ~]#  export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.51.x86_64
但是这样只能在当前会话中有效,一旦注销下线,就失效了。
所以最好保存到$HOME/.bashrc文件中(这个文件是针对指定用户的,如你是叫dabu用户,那么使用dabu用户登陆,然后输入命令:echo $HOME/.bashrc,就会显示你要修改的文件路径)
找到该文件后,在文件底部添加一行,如下:
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.51.x86_64
修改后保存关闭文件。

或者让系统上的所有用户使用java(openjdk) ,则要进行下面的操作:
[root@dabu.info ~]#  vi  /etc/profile
将下面的三行粘贴到 /etc/profile   中:
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.51.x86_64
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

保存关闭,后,执行:
[root@dabu.info ~]#  source  /etc/profile
让设置立即生效。

在输入以下命令,来确认这三个变量是否设成了我们想要的:
[root@dabu.info ~]# echo $JAVA_HOME
[root@dabu.info ~]# echo $CLASSPATH
[root@dabu.info ~]# echo $PATH

测试java是否安装配置成功

查看 java 版本,输入命令:
[root@dabu.info ~]#  java     -version

创建一个java小程序测试下,名字叫 HelloWorld.java ,输入以下命令:
[root@dabu.info ~]# touch HelloWorld.java

将以下代码复制到 HelloWorld.java 中 :
public class HelloWorld {
pu
blic static void main(String[] args) {
System.out.println("Hello, World! This is a test code by nixCraft!");
}
}

复制进去后,保存关闭文件。编译和运行这个小程序,输入以下命令:
[root@dabu.info ~]#  javac HelloWorld.java
[root@dabu.info ~]#  java HelloWorld

会得到以下显示:
Hello, World! This is a test code by nixCraft!

如何(怎样)运行 .jar  这类java应用?

语法如下:
[root@dabu.info ~]# java -jar file.jar
[root@dabu.info ~]# java -jar /path/to/my/java/app.jar  #/path/to/my/java/app.jar表示应用的路径
[root@dabu.info ~]# java -jar /path/to/my/java/app.jar arg1 arg2   # arg1表示参数1 ,arg2表示参数2

 

参考自《CentOS Install Java SDK using yum Command》,其中关于变量的文章和内容,我修改了下,因为它说的是sun jdk 而不是 openjdk。

 

转载请注明:大步's Blog » CentOS 使用yum命令安装Java SDK(openjdk)

  1. 请问 “将 OpenSDK 安装到/usr/lib/jvm/ 目录” 这是怎么得知的?
    我找了半天好多java的目录,把我搞晕了。

SiteMap