Centos7.3下部署Java开发环境
本文我们主要讲述一下如何在Centos7.3下部署Java开发环境。当前我们的操作系统环境如下:
[root@localhost nginx-1.10.3]# lsb_release -a LSB Version: :core-4.1-amd64:core-4.1-noarch Distributor ID: CentOS Description: CentOS Linux release 7.3.1611 (Core) Release: 7.3.1611 Codename: Core
这里我们安装JDK1.8版本。
1. 卸载JDK(可选)
先查看我们是否已经安装过JDK:
如果已经安装,可以执行如下命令卸载:
注意:上面nodeps后面的那串名称是通过上面命令查询出来的,查出几个卸载几个
2. 安装JDK
我们可以通过如下两种方式下载JDK1.8:
- 可以直接到官网下载http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html (这里选择的是rpm 64位的),下载完然后复制到centos中的自己想要存放的目录中
- 直接在centos中,创建一个目录存储下载的jdk,然后通过命令下载
# wget http://download.oracle.com/otn-pub/java/jdk/8u131-b11/jdk-8u131-linux-x64.rpm
下载完成后执行如下命令进行安装:
执行如下命令检查是否安装成功:
[root@localhost nginx-1.10.3]# java -version openjdk version "1.8.0_141" OpenJDK Runtime Environment (build 1.8.0_141-b16) OpenJDK 64-Bit Server VM (build 25.141-b16, mixed mode)
注: Java历史版本可在此下载javase archive
3. 配置环境变量
执行如下命令查看安装目录:
上面我们看到java
与javac
的安装目录有稍许不一样。javac主要是用于在编译时使用,而jre主要是用于在运行时使用。最后我们得出java安装主目录为:
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64
将如下环境变量配置到/etc/profile中:
执行source /etc/profile
命令使配置生效。
检查环境变量设置是否成功:
[root@localhost nginx-1.10.3]# echo $JAVA_HOME /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64 [root@localhost nginx-1.10.3]# [root@localhost nginx-1.10.3]# echo $JRE_HOME /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64/jre [root@localhost nginx-1.10.3]# [root@localhost nginx-1.10.3]# echo $CLASSPATH /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64/lib:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64/jre/lib:
4. 测试
编写如下测试程序(HelloWorld.java):
执行如下命令进行编译、执行:
[root@localhost java-src]# javac -d . HelloWorld.java [root@localhost java-src]# [root@localhost java-src]# java com.TT.HelloWorld Hello,world
说明:可以通过java -cp
来指定classpath,例如:
5. open-jdk依赖
下面给出一个手动安装java-1.8.0-openjdk-1.8.0.161-0.b14
时大概的依赖包:
# ls -al total 46996 drwxr-xr-x 2 root root 4096 May 12 09:54 . drwxrwxrwx 7 root root 4096 May 11 21:40 .. -rw-r--r-- 1 root root 185720 May 11 20:23 chkconfig-1.7.4-1.el7.x86_64.rpm -rw-r--r-- 1 root root 18900 May 11 20:24 copy-jdk-configs-2.2-3.el7.noarch.rpm -rw-r--r-- 1 root root 234724 May 11 20:56 fontconfig-2.10.95-11.el7.x86_64.rpm -rw-r--r-- 1 root root 10116 May 11 20:57 fontpackages-filesystem-1.44-8.el7.noarch.rpm -rw-r--r-- 1 root root 40964 May 11 20:20 giflib-4.1.6-9.el7.x86_64.rpm -rw-r--r-- 1 root root 248404 May 11 20:10 java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64.rpm -rw-r--r-- 1 root root 10251448 May 12 09:54 java-1.8.0-openjdk-devel-1.8.0.161-0.b14.el7_4.x86_64.rpm -rw-r--r-- 1 root root 33169084 May 11 20:12 java-1.8.0-openjdk-headless-1.8.0.161-0.b14.el7_4.x86_64.rpm -rw-r--r-- 1 root root 61200 May 11 20:29 jpackage-utils-1.7.5-3.16.el6.noarch.rpm -rw-r--r-- 1 root root 31564 May 11 21:20 libfontenc-1.1.3-3.el7.x86_64.rpm -rw-r--r-- 1 root root 67720 May 11 20:21 libICE-1.0.9-9.el7.x86_64.rpm -rw-r--r-- 1 root root 40160 May 11 20:22 libSM-1.2.2-2.el7.x86_64.rpm -rw-r--r-- 1 root root 22792 May 11 20:16 libXcomposite-0.4.4-4.1.el7.x86_64.rpm -rw-r--r-- 1 root root 39572 May 11 20:17 libXext-1.3.3-3.el7.x86_64.rpm -rw-r--r-- 1 root root 155992 May 11 21:02 libXfont-1.5.2-1.el7.x86_64.rpm -rw-r--r-- 1 root root 41088 May 11 20:18 libXi-1.7.9-1.el7.x86_64.rpm -rw-r--r-- 1 root root 26312 May 11 20:19 libXrender-0.9.10-1.el7.x86_64.rpm -rw-r--r-- 1 root root 20812 May 11 20:20 libXtst-1.2.3-1.el7.x86_64.rpm -rw-r--r-- 1 root root 89660 May 11 20:30 lksctp-tools-1.0.17-2.el7.x86_64.rpm -rw-r--r-- 1 root root 163172 May 29 2017 lyx-fonts-2.2.3-1.el7.noarch.rpm -rw-r--r-- 1 root root 129348 Apr 25 19:29 nspr-4.17.0-1.el7.x86_64.rpm -rw-r--r-- 1 root root 861612 Apr 25 19:29 nss-3.34.0-4.el7.x86_64.rpm -rw-r--r-- 1 root root 74644 Aug 11 2017 nss-pem-1.0.3-4.el7.x86_64.rpm -rw-r--r-- 1 root root 318152 Apr 25 19:30 nss-softokn-3.34.0-2.el7.x86_64.rpm -rw-r--r-- 1 root root 224936 Apr 25 19:30 nss-softokn-freebl-3.34.0-2.el7.x86_64.rpm -rw-r--r-- 1 root root 62696 Apr 25 19:30 nss-sysinit-3.34.0-4.el7.x86_64.rpm -rw-r--r-- 1 root root 525004 Apr 25 19:30 nss-tools-3.34.0-4.el7.x86_64.rpm -rw-r--r-- 1 root root 79484 Apr 25 19:30 nss-util-3.34.0-2.el7.x86_64.rpm -rw-r--r-- 1 root root 48676 May 11 21:35 ttmkfdir-3.0.9-42.el7.x86_64.rpm -rw-r--r-- 1 root root 187852 May 11 20:28 tzdata-java-2017c-1.el7.noarch.rpm -rw-r--r-- 1 root root 533720 May 11 20:15 xorg-x11-fonts-Type1-7.5-9.el7.noarch.rpm -rw-r--r-- 1 root root 89400 May 11 21:34 xorg-x11-font-utils-7.5-20.el7.x86_64.rpm
说明,Linux环境下后台执行命令的两种方式:
-
command & : 后台运行,你关掉终端会停止运行
-
nohup command & : 后台运行,你关掉终端也会继续运行
参看: