Linux系统版本:centos 7.5 x64位
VMware版本: VMware Workstation Pro 16
Xshell工具版本:Xshell 7 (for home and free)
Xftp工具版本:Xftp 7 (for home and free)
一、如何在虚拟机中装配JDK?
1.1 装配JDK步骤①
①使用命令【
rpm -qa | grep jdk
】查询虚拟机中的Linux系统中是否有自带的jdk
ps:
- 如果你的Linux虚拟机是以【Minimal版】的ISO文件创建的【此种版本系统只包含最基本的命令行】,该系统中就没有自带jdk;
- 如果虚拟机是以非Minimal版的iso镜像文件创建,且非最小化安装系统,则可能会有多种版本的jdk。
②使用命令【
rpm -e --nodeps jdk的rpm软件包的名字
】卸载自带的jdk
ps:Linux系统中自带的jdk可卸亦可不卸,我这里是为统一jdk版本,兼容版本差异,方便在后面时运行tomcat服务器上部署的Java 项目,遂卸掉。
剩余的jdk皆可按上面的命令删除即可,这里暂不一一赘述
③将jdk的tar.gz的压缩包上传到/opt目录下【你也可以放到别的目录下】
备注:/opt 目录是给主机额外安装软件所摆放的目录。比如你安装一个mysql数据库则就可以放到这个目录下。默认是空的。
这里推荐使用Xftp 工具上传文件至虚拟机中的/opt目录下,如下所示:
1.2 如何使用Xftp工具上传文件?【如已熟知,可忽略此小结】
1)打开
Xftp工具
,找到下面的图标并点开
2)打开”编辑会话属性“ 界面 --> 编辑"名称” --> 输入“主机”的
IP地址
【要连接的虚拟机】
ps:可在此界面上添加 登录虚拟机的用户与密码,没设也不要紧,后面连接虚拟机会要你输入登录虚拟机的用户名与密码
3)在“会话”界面选中刚才新建的会话,然后点击“连接”
4)在弹出的“SSH 用户名” 选项卡中输入要登录的用户名
5)鼠标右击后,按”刷新“,以输入密码连接虚拟机
6)输入密码,连接虚拟机
7)消除虚拟机文件夹显示的乱码
a. 找到下面的”属性“图标,点开它
b. “选项” --> 选择 ”Unicode(UTF-8)“作为编码 --> ”确定“
1.3 装配JDK步骤②
④ 将
jdk
压缩包解压
⑤cd 至 /opt/jdk1.8.0_152 目录下,将该路径【
你的jdk安装路径
】复制出来,后面配JAVA_HOME 环境变量
时要用
⑥ 一般来说,配置环境变量直接使用命令【vim /etc/rpofile
】配置即可,但是官方不建议我们这样做,如下所示:
⑦在
/etc/profile.d
目录下创建my_env.sh文件,以配置JDK的环境变量
⑧执行命令【
source /etc/profile.d/my_env.sh
】使环境变量立即生效,如果不生效就重启XShell
⑨执行命令【
javac
】测试jdk装配情况
出现上述界面,就代表装配JDK成功!!!
二、如何在虚拟机中装配Tomcat服务器?
2.1 装配Tomcat步骤
①使用
Xftp工具
上传Tomcat的压缩包到虚拟机中的/opt/software 目录下
②使用命令【
tar -zxvf apache-tomcat-7.0.70.tar.gz -C ../
】解压Tomcat的压缩包至 /opt 目录下
③
进入Tomcat的bin目录
执行./startup.sh
启动Tomcat服务器
ps:这里可以先配置Tomcat的环境变量,这样就可以在任意目录下执行startup.sh启动Tomcat服务器,相关步骤和装配JDK时一样,这里不做赘述。
2.2 测试Tomcat服务器
①在外部主机的浏览器网址栏上键入Tomcat服务器的IP地址【部署Tomcat服务器的虚拟机的ip地址+端口号8080
】运行测试
②Tomcat服务器无反应,测试失败
分析原因:可能是虚拟机开启了防火墙功能,阻挡了外部主机的连接路由
排查步骤:
①在虚拟机中运行命令【systemctl status firewalld
】查看防火墙功能运行情况
②在虚拟机中运行命令【
systemctl stop firewalld
】关闭防火墙,然后在外部主机上再次测试连接
出现上述界面,说明Tomcat服务器部署成功!!!
附注:
关闭防火墙或开放端口相关命令如下所示:
关闭防火墙
:systemctl stop firewalld.service开放端口
:
查看开放的端口号
:firewall-cmd --list-all设置开放的服务或端口号
:
- firewall-cmd --add-service=http --permanent
- firewall-cmd --add-port=8080/tcp --permanent
重启防火墙
:firewall-cmd --reload