以下都是以root身份进行操作
安装JDK
- 一般装完centos7之后,系统会自带一个java
命令
java -version
显示
java version "1.8.0_243"
Java(TM) SE Runtime Environment (build 1.8.0_243-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.271-b09, mixed mode)
- 检测系统jdk的安装包
命令
rpm -qa | grep java #-qa 列出所有安装过的包
显示
java-1.7.0-openjdk-1.7.0.111-2.6.7.8.el7.x86_64
python-javapackages-3.4.1-11.el7.noarch
tzdata-java-2016g-2.el7.noarch
javapackages-tools-3.4.1-11.el7.noarch
java-1.8.0-openjdk-headless-1.8.0.102-4.b14.el7.x86_64
java-1.7.0-openjdk-headless-1.7.0.111-2.6.7.8.el7.x86_64
- 删除不需要的安装包
命令
举例:
rpm -e --nodeps tzdata-java-2016g-2.el7.noarch
#-e:删除指定的套件
删除不需要的安装包后再次用检测命令,显示如下两条就可(不必一模一样):
javapackages-tools-3.4.1-11.el7.noarch
python-javapackages-3.4.1-11.el7.noarch
- 重新下载jdk
这边我们自己去官网重新下载jdk。jdk的下载可能需要Oracle账号,大家自行百度。
自己创建一个目录用于放jdk安装包,我的是:
mkdir -p /usr/jdk #-p 确保目录名称存在,不存在的就建一个。
tar -zxvf jdk-8u271-linux-x64.tar.gz -C /usr/jdk
- 设置环境变量,可以在任意路径下访问使用java
vim /etc/profile
在文件最前面添加如下代码:
JAVA_HOME=/usr/jdk/jdk1.8.0_271
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH
- 执行profile文件,使配置文件立即生效
source /etc/profile
- 查看你自己下载jdk
java -version
java version "1.8.0_271"
Java(TM) SE Runtime Environment (build 1.8.0_271-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.271-b09, mixed mode)
到这一步,恭喜你,你的jdk算是下载配置好啦。
安装Tomcat
- 创建一个目录用于放下载下来的Tomcat
mkdir /usr/local/Tomcat
- 自行去官网下载Tomcat,我下载的是Tomcat8,下载好将压缩包放到刚才创建的目录下,进行解压
tar -zxvf apache-tomcat-8.5.60.tar.gz
- 将tomcat中的/bin/catalina.sh 脚本 拷贝到init.d下,这样可以任何路径下通过service tomcat start 就可以启动tomcat
cp -p /usr/local/tomcat/bin/catalina.sh /etc/init.d/tomcat
#除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
- 修改配置文件
vim /etc/init.d/tomcat
在第二行添加
chkconfig: 112 63 37
description: tomcat server init script
Source Function Library
. /etc/init.d/functions #.后面有个空格
JAVA_HOME=/usr/jdk/jdk1.8.0_271/
CATALINA_HOME=/usr/local/tomcat
- 保存后执行以下操作
chmod 755 /etc/init.d/tomcat #755表示三个用户的权限
chkconfig --add tomcat #chkconfig检查配置文件
chkconfig tomcat on
- 启动tomcat:
service tomcat start
出错:Warning: tomcat.service changed on disk. Run ‘systemctl daemon-reload’ to reload units.
解决办法:systemctl daemon-reload --重新加载守护进程
- 在浏览器输入http://你的ip:8080
激动人心的时刻:
参考文章:https://blog.csdn.net/JavaBuilt/article/details/102870368