buntu 安装jdk:[链接
Ubuntu安装eclipse:[链接
Ubuntu下安装MySQL与mysql 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 “$@”)的上面 
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的更多相关文章

  1. Ubuntu配置Tomcat9非root用户启动

    unix类系统的root用户具有极大的权利,所以很多时候我们不希望程序以root身份启动,这也就是配置Tomcat以指定身份(非root)启动的初衷,虽然也没人来攻击我的服务器,但本着学习学习的目的, ...

  2. ubuntu配置NFS

    ubuntu配置NFS: sudo apt-get install nfs-kernel-server 配置/etc/exports 例如:我们要将根目录下的 /opt/FriendlyARM/min ...

  3. ubuntu配置tftp服务

    ubuntu配置TFTP服务: TFTP是用来下载远程文件的最简单的网络协议,基于UDP协议.xinetd是新一代的网络守护进程服务程序,经常用于管理多种轻量型internet服务. sudo apt ...

  4. 关于ubuntu配置静态IP 无法正常上网的解决方案

    在ubuntu中配置静态IP后无法正常上网. 解决: 1.在终端执行 vim /etc/network/interfaces 在文件中加入如下内容,网关要写上,我开始一直无法上网就是因为没有配置网关 ...

  5. 转: ubuntu配置NFS,挂载开发板

    ====================================== 命令: 1. $sudo apt-get install nfs-kernel-server           (安装N ...

  6. Ubuntu配置和修改IP地址

    Ubuntu配置和修改IP地址 1.修改配置文件/etc/network/interfacesroot@ubuntu:~# sudo gedit /etc/network/interfaces 添加以 ...

  7. ubuntu 配置JDK环境变量

    ubuntu 配置JDK环境变量 (2011-11-25 16:45:59) 转载▼ 标签: ubuntu jdk 环境变量 杂谈 分类: Linux_Ubuntu_CentOs 过程如下: 1. 先 ...

  8. Ubuntu配置OpenStack 二:配置时间同步NTP和安装数据库Maridb以及问题总结

    继上一节Ubuntu配置OpenStack 一:配置主机环境,下面继续为安装时间同步,以及配置openstack的安装包源和安装数据库Maridb.(全文截图都是由自己徒手搭建完成并且截图) 一.安装 ...

  9. ubuntu配置小飞机

    现在有两种方式在ubuntu配置本地shadowsocks(前提已经在服务器上搭建好了ss) windows,ios和安卓配置都是gui,没什么好说的.然后前期工作什么买vps啊,比较无脑,不想记录这 ...

随机推荐

  1. 多台或者集群环境下如何保证spring定时器只执行一个

    先说一下我们的系统, 在65和66上分别部署有weblogic节点,共计四个,在项目中我们的定时器会隔一段时间就从其它的五个系统中取数据,这时就出现了问题,本来取一次数据就可以的,现在重复执行了三次, ...

  2. 【转载】Linux Cache Mechanism Summary(undone)

    http://www.cnblogs.com/LittleHann/p/3904909.html 目录 1. 缓存机制简介 2. 内核缓存机制 3. 内存缓存机制 4. 文件缓存机制 5. 数据库缓存 ...

  3. Day8 接口与归一化设计

    接口:在程序的使用中,我不能把程序的主体直接提供给使用者,一般是提供一个接口. 为什么要使用接口: 1,接口提取了一群共同的函数,可以把接口当做一个函数的集合. 2,让子类去实现接口中的函数. 归一化 ...

  4. Using RequireJS in AngularJS Applications

    http://www.sitepoint.com/using-requirejs-AngularJS-applications/ While writing large JavaScript appl ...

  5. ubuntu16 关于root的使用

    ubuntu新版本安全性提升了很多,root用户的权限不像centos那样获取root的方式,直接su即可.ubuntu需要手动配置root账户以及密码. 配置方式: sudo passwd root ...

  6. 当配置 DispatcherServlet拦截“/”,SpringMVC访问静态资源的三种方式

    如何你的DispatcherServlet拦截 *.do这样的URL,就不存在访问不到静态资源的问题.如果你的DispatcherServlet拦截“/”,拦截了所有的请求,同时对*.js,*.jpg ...

  7. Node六-模块化

    Node实现CommonJS规范 -因此node可以使用模块化的方式组织代码结构 简单命令行加减运算 -代码 命令行执行 V8对es6的支持 -直接支持:const.模版字符串等. -严格模式支持:l ...

  8. thinkphp实现文件上传

    文件上传详细讲解 http://www.thinkphp.cn/info/194.html 上传根目录不存在问题解决方法 http://www.thinkphp.cn/topic/10779.html

  9. ScalaPB(4): 通用跨系统protobuf数据,sbt设置

    我们知道,在集群环境节点之间进行交换的数据必须经过序列化/反序列化处理过程,而在这方面protobuf是一个比较高效.易用的模式.用户首先在.proto文件中用IDL来定义系统中各种需要进行交换的数据 ...

  10. Http协议、Tomcat、servlet

    HTTP协议 Http,超文本传输协议是互联网上最广泛的一种网络协议,所有的www文件都必须遵守这个标准. Http协议由http请求和http响应组成 http请求: 1.请求行 请求方式 POST ...