Ubuntu配置tomcat9

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ubuntu配置tomcat9相关的知识,希望对你有一定的参考价值。


Ubuntu 安装jdk:[链接] 

Ubuntu安装eclipse:[链接] 

Ubuntu下安装MySQLmysql workbench:[链接] 

Ubuntu配置tomcat9:[链接]


Ubuntu配置tomcat9

一.下载tar.gz压缩文件

这里下载core版本的。

二.把压缩包复制到/usr/tomcat文件夹下(这里的tomcat文件夹是自己建的)

技术分享

解压压缩文件

sudo tar -zxvf apache-tomcat-9.0.0.M18.tar.gz

三.设置环境变量

按照百度的教程: 
使用gedit打开startup.sh文件,添加Java的jdk与jre(前提是已经安装jdk与jre)

sudo gedit /usr/tomcat/apache-tomcat-9.0.0.M18/bin/startup.sh

 

在文件末尾添加如下代码:

JAVA_HOME=/usr/jvm/jdk1.8.0_121
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME
CLASSPATH=.:$JRE_HOME/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
TOMCAT_HOME=/usr/tomcat/apache-tomcat-9.0.0.M18

 

前边4句是java的环境变量,最后一句是tomcat的环境变量 

然而出现了如下问题(找不到JAVA_HOME):

Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program

 

首先百度搜的几乎清一色的都使是这个办法:

技术分享

但是我按照这个办法修改之后还是不行,于是爬墙出去搜了下,解决办法如下: 
技术分享

试过之后,果然有效, 如图,输入 :

 sudo ./bin/startup.sh

 

技术分享

出现Tomcat started了,但是在浏览器里输入:http://localhost:8080/ 却出现了无法访问的问题。 
来来回回又检查好几遍原来JAVA_HOME的路径错了(有点崩溃)。

修正后我发现两种办法都能正确开启tomcat成功:

1.在startup.sh中添加:

JAVA_HOME=/usr/java/jdk1.8.0_121
JRE_HOME=${JAVA_HOME}/jre
PATH=${JAVA_HOME}/bin:$PATH
CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
CATALINA_HOME=/usr/tomcat/apache-tomcat-9.0.0.M18

 

这里要注意: 
1.以上代码要添加到startup.sh文件中最后一句(exec “PRGDIR"/"EXECUTABLE” start “[email protected]”)的上面 
2.还要在shutdown.sh中添加以上代码(环境变量)才能正确关闭tomcat,要不然执行关闭命令的时候还会提示(这里又折腾了十几分钟才整明白)

Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program

 

2.在setenv.sh中添加:

export JAVA_HOME=/usr/java/jdk1.8.0_121
export CATALINA_HOME=/usr/tomcat/apache-tomcat-9.0.0.M18

 

这种办法相对于第一种办法有一个好处就是:只需要添加这一次,无论开启还是关闭tomcat都不会找不到JAVA_HOME。

四.其他相关

1.为什么在setenv.sh中添加环境变量就能解决问题:

技术分享 
链接:http://askubuntu.com/questions/468772/tomcat-does-not-recognize-java-home 
大体意思是:在你使用catalina.sh开始tomcat的时候,他会现在setenv.sh中搜索JAVA_HOME和CATALINA_HOME所以我们在setenv.sh文件中添加环境变量才对。

2.相关linux命令:

#关闭与打开tomcat
sudo ./bin/shutdown.sh
sudo ./bin/startup.sh

#用文本编辑器编辑相关文件
sudo gedit ./bin/startup.sh
sudo gedit ./bin/setenv.sh
sudo gedit ./bin/shutdown.sh

 

最后附一张最终解决问题的截图: 
技术分享

为Eclipse配置Tomcat

解压完tomcat9之后,tomcat下所有文件夹的读写都是需要root权限的,所以在向eclipse中添加的时候会提示Unknown version of Tomcat was specified,搜索了一下午也没整明白,第二天突发奇想是不是跟权限有关系,于是把tomcat文件夹的权限改成777,果然,问题解决了: 
技术分享

sudo chmod -R  777 apache-tomcat-9.0.0.M18/

 

777是读、写、执行权限










以上是关于Ubuntu配置tomcat9的主要内容,如果未能解决你的问题,请参考以下文章

Ubuntu16安装jdk8配置Tomcat9

安装tomcat9的问题,端口8080未显示Ubuntu [关闭]

Ubuntu18.04 安装tomcat9

ubuntu20.04安装tomcat9命令行javaee常用命令

Ubuntu下配置tomcat

linuxUbuntu20.04使用apt安装tomcat9