天天看点

阿里云CentOs7下安装JDK、Tomcat详细步骤教程

一、引言:

初学java的时候会充满各种疑惑,对java的体系及其使用的不了解,往往导致开发环境部署的失败,亦或者后面继续学习蹦出一些问题。现在记录一下自己所学,以便后面捡起java从头复习。

1、java不仅仅是一门编程语言,还是一个由计算机软件和规范组成的技术体系。这个技术体系包含这几个组成部分:
  1. java程序语言设计
  2. 各种硬件平台上的java虚拟机实现
  3. class文件格式
  4. java类库API
  5. 来自商家机构和开源社区的第三方类库
2、从java各组层部分的功能划分: JDK(Java Development Kit) 我们通常用jdk来代指整个java的技术体系,它里面包含了 java语言程序设计、java虚拟机、java类库 这三部分,它是用于支持java开发的最小环境,也是我们在windows或者linux下学习需要下载的java环境。另外还有一个概念是JRE(Java Runtime Enviroment),它是不带编译器的支持java程序运行的标准环境,包含 java虚拟机、java类库API中java SE API子集这两部分。 3、按技术服务领域来划分的: 只说我目前常接触的两种: Java SE (Standard Editon) 标准版,支持面向桌面级应用,例如windows下的应用程序,它提供了完整的java核心的API,这条产线它在JDK6以前被称为J2SE。内含标准开发和运行环境(JDK+JRE),我们平常学的基础java开发就是这个。 Java EE(Enterprise Edition) 企业版,支持使用多层架构的企业应用的java平台,多用于企业级开发,包括web开发等。除了提供java SE API外,还对其做了大量有针对性的扩充,并提供了相关的部署支持,这条产线在JDK以前被称为J2EE,在JDK10以后被Oracle放弃,捐给了Ecplise基金会管理,此后被称为Jakarta EE。内含 java的web 开发和运行环境。如果后面使用的ecplise这个IDE来做java学习开发等,一定要选ecplise-jee的下载,这样你后面就不要下载相应插件或者换软件之类的了。我自己下的是这个版本:eclipse-jee-oxygen-R-win32-x86_64。 Java ME(Micro Edition) 移动端版本,支持java程序运行在移动终端(手机,PDA)上的平台,对API有精简,并加入了移动终端的针对性支持。JDK6之前称为J2ME,但是现在非常流行的,主要使用java语言开发程序的Android却并不属于Java ME。

补充java发展史:

在jdk6之前,jdk一直是以低调的jdk1.x版本推进,直到jdk1.5开始直接去掉了小数点直接命名为jdk5,jdk6,jdk8等......所以我后面也纳闷为什么装好jdk输入java -version命令,出现的是jdk1.8的信息,但是却找不到1.8的安装包。其实jdk8就是指代jdk1.8,其他的版本也类似。一开始java的开发工作在jdk7之前一直是在sun公司手上,但是曾经辉煌一时的sun公司因经营不善,在jdk7阶段已无力继续推进更新java计划,被Oracle公司以74亿美元收购了sun公司,然后,java的商标正式划归Oracle公司所有。后来也出现了一件大事,就是18年Android的java侵权案有了结果,法庭判定Google公司赔偿Oracle公司合计88亿美元。要知道当初是sun像Google抛去的橄榄枝,Android的流行也极大的巩固了java的地位。然而Oracle转手就用sun的专利把Google告了,此举让人觉得有悖sun公司推进java的初衷,最后Oracle还”净赚“了java的所有权。不禁让人感到唏嘘。

二、Linux(CentOS系统)jdk8安装步骤:

检测是否存在java,可能自带的jdk比较low吧(其实是自己不会用),所以大都建议卸掉。

输入命令:找不到就说明没装:
java -version           

如果显示java版本,那就先删除旧的java:

删除完后可输入下面命令查看卸载情况:

查找java所在位置:

rpm -qa | grep java             
参数解析:

rpm  redhat系列的linux系统软件管理工具

-qa 使用询问模式,查询所有套件,

grep 查找文件里符合条件的字符串

删除查找到的java目录文件,如:

rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.65-3.b17.el7.x86_64           
参数解析:

rpm 软件管理工具

-e 删除

--nodeps 删除时连带相关依赖一起删除

java -version           

出现java not found就卸载完成

安装新的jdk1.8:

下载后解压:(我这里sudo是已经在之前就给用户赋予了root用户一样的权限,如果没设置就干脆用root,因为只不过我是想让这个java环境只属于此用户)

sudo tar zxvf jdk-8u161-linux-x64.tar.gz -C /usr/local/           

tar    备份文件

-zxvf     

-z     通过gzip指令处理备份文件

-x    从备份文件中还原文件

-v     显示指令执行过程

-f     指定备份文件

-C 解压到指定的目录

更改java目录名字方便使用:

sudo mv /usr/local/jdk1.8.0_161/ /usr/local/java/           
添加环境变量:
#java environment  
export JAVA_HOME=/usr/local/java
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin           

用管理员是身份进入配置文件:

光标移动到文本最下面,按i进入linux自带的vi编辑器的insert模式,在后一行粘贴如下代码(JAVA_HOME是你的java安装路径),

添加之后按Esc键进入vi编辑器你的命令模式

此时再输入:表示输入命令开始,

输入wq 回车即可保存配置并退出,

输入命令使环境变量配置马上生效:

source /etc/profile           

测试是否安装成功

java -version           

成功!(若是不成功就再来一遍,另外注意环境变量配置改的时候小心一些,别误删了)

下载方法一:去官网下载:

https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

(但是要注册Oracle账号,不注册下不了,注册有些麻烦的,下起来速度还慢,而且现在Oracle的jdk8以后的高版本是收费的)

下载方法二:百度云盘:linux 64 jdk1.8( jdk-8u161-linux-x64.tar.gz):

https://pan.baidu.com/s/18IicPYf7W0j-sHBXvfKyyg

;windows 64 jdk1.8 :

https://pan.baidu.com/s/1eZM0SnpjHY8Wp_H2gkFb7Q

安装,这里下的压缩包的方式,所以用解压的安装方法,当然还有rpm的方式,但是需要下载rpm安装包:

三、Linux(CentOS)下Tomcat 9的下载安装

下载Tomcat:

​ 官网下载跟jdk相应的版本的tomcat:

http://tomcat.apache.org/

:(因为下载的包比较小才10M,所以直接在官网下),找到响应的版本。

下tomcat要先对应自己的jdk版本,比如我下的就是tomcat9,而我的jdk8可以用。(现在才知道tomcat Tom+cat 不就是Tom猫的意思吗,可真有意思):

右键复制 在linux安装tomcat链接地址

执行命令下载tomcat的安装包:

sudo wget         https://mirror.bit.edu.cn/apache/tomcat/tomcat-9/v9.0.31/bin/apache-tomcat-9.0.31.tar.gz               

安装Tomcat:

解压安装包:

sudo tar -zxvf apache-tomcat-9.0.31.tar.gz -C /usr/local/           

更名:

sudo mv /usr/local/apache-tomcat-9.0.31/ /usr/local/tomcat/           
编辑环境变量:
sudo vim /etc/profile           

编辑保存:在文件末尾另起一行按i进入插入模式添加如下内容(添加之后 按Esc键——输入 :wq ——回车保存退出)

#tomcat9  
export CATALINA_HOME=/usr/local/tomcat
export CATALINA_BASE=/usr/local/tomcat
export TOMCAT_HOME=/usr/local/tomcat               
使环境变量生效:
source /etc/profile           

修改tomcat配置文件service.xml:

cd /usr/local/tomcat/conf           

找到配置8080端口的位置,在节点末尾添加

URIEncoding="UTF-8"

启动tomcat:

cd /usr/local/tomcat/bin           
./startup.sh           

因为我用的是阿里云轻量型服务器,必须要在安全规则那里进行端口开放设置:

看了下轻量型的服务器默认防火墙是关闭的,因为轻量型服务器已经有网页应用部署了,所以没开防火墙。愣是要开防火墙那就得在防火墙那边用命令把相应端口开放,这样开启的防火墙就不会拦截外部请求了。另外如果是阿里云ECS云服务器开放tomcat端口步骤可以参考另一篇博客:

https://blog.csdn.net/Blue_Sky_rain/article/details/91348791

测试:公网ip:8080

Tomcat 目录结构说明

[mrx@thisexample]# ls           
bin             --启动命令目录
conf           --配置文件目录      *重点
lib              --库文件目录
logs           --日志文件目录      *重点
temp         --临时缓存文件
webapps  --web应用家目录    *重点,因为自己的项目一般都是直接扔在在这里
work         --工作缓存目录</code></pre>                

云服务器ECS地址:阿里云·云小站