服务器端 CentOS 下配置 JDK 和 Tonmcat 踩坑合集
一、配置 JDK 时,在 /etc/profile 文件下配置环境变量,添加
#java environment
export JAVA_HOME=/usr/java/jdk-10.0.
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin
注意:
1、JAVA_HOME 地址按照自己配置的来
2、不需要再 export JRE_HOME
二、安装 Tomcat 后,不需要再配置环境变量
1、在 bin/conf/server.xml 下修改启动端口号,建议直接改成 80,因为此时浏览器直接输入 ip 即可访问 Tomcat 所部署的应用,注意防火墙开启这些端口。
2、查看日志,看是否报错端口被占用;若报错,可以用 netstat –lntup 命令查看端口进程及 PID 号,用 kill -9 PID 命令杀死进程,再启动试试。
3、最严重的坑是,默认 8005 端口用于 shutdown,该端口没有正常启动,则无法正常执行 startup.sh 和 shutdown.sh,而 8005 端口启动特别慢,大约十几分钟。 若执行完 startup.sh 后立马在浏览器输入 ip 可能会没有响应,需要等 8005 端口正常启动后才行。此间若错误地再执行 startup.sh 则日志文件会显示端口被占用,原因是没等正常启动 tomcat 完就多次重新启动,而此时因为 8005 未正常启动,故执行 shutdown.sh 也会报错。
4、查看日志,8005 端口之所以启动慢,是因为出于安全地计算随机数的过程卡顿,直接配置 jdk securerandom.source 为 urandom 解决:
- 打开 $JAVA_HOME/jre/lib/security/java.security 这个文件,找到 securerandom.source 配置项
- 修改为:securerandom.source=file:/dev/urandom
5、建议正常安装并启动 tomcat,耐心等待,netstat -lntup 命令查看处在 listen 状态的端口,所需的端口都正常启动了,查看日志文件,日志输出不报错,再用浏览器访问 ip。
三、经验教训
1、安装配置的时候,多看一些博客,选取靠谱并详细的博客,合理归纳必要的步骤理解其意义,再来安装配置。
2、多看报错的提示,包括日志文件,对每一个报错,翻译并理解其含义,上网查原因和解决办法,然后多尝试。
3、熟悉一下 CentOS 下建立和移动文件夹命令,安装的相关命令,firewall、netstat、kill 等系列命令,可能会有用。
服务器端 CentOS 下配置 JDK 和 Tonmcat 踩坑合集的更多相关文章
- CentOS下配置jdk
CentOS下配置jdk 1.在jdk官网上下载最新版本的jdk 2.将jdk放到相应的位置,使用如下命令来解压. .0_181 /opt/data/ tar -zxf jdk-8u181-linux ...
- 在CentOS/Windows下配置Nginx(以及踩坑)
在CentOS/Windows下配置Nginx(以及踩坑) 1. 序言 因为这类文章网上比较多,实际操作起来也大同小异,所以我并不会着重于详细配置方面,而是将我配置时踩的坑写出来. 2. CentOS ...
- 小程序框架WePY 从入门到放弃踩坑合集
小程序框架WePY 从入门到放弃踩坑合集 一点点介绍WePY 因为小程序的语法设计略迷, 所以x1 模块化起来并不方便, 所以x2 各厂就出了不少的框架用以方便小程序的开发, 腾讯看到别人家都出了框架 ...
- better-scroll踩坑合集
better-scroll踩坑合集:https://www.jianshu.com/p/6338a8033281
- CentOS 下配置JDK
从官网上下载jdk到系统中,并解压好 tar –axvf jdk.tr.gz 1. PATH环境变量.作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找 ...
- tensorflow踩坑合集2. TF Serving & gRPC 踩坑
这一章我们借着之前的NER的模型聊聊tensorflow serving,以及gRPC调用要注意的点.以下代码为了方便理解做了简化,完整代码详见Github-ChineseNER ,里面提供了训练好的 ...
- tensorflow feature_column踩坑合集
踩坑内容包含以下 feature_column的输入输出类型,用一个数据集给出demo feature_column接estimator feature_column接Keras feature_co ...
- centos下安装redis(记录其中踩坑的过程)
一.先下载到redis-3.0.4.tar.gz包(本文以3.0.4版本为例) 我将这个包放在/opt目录下,在/opt下并解压这个包 tar -zxvf redis-.tar.gz 然后进入redi ...
- arm安装cuda9.0,tensorflow-gpu, jetson tx2安装Jetpack踩坑合集
因为要在arm(aarch64)架构的linux环境中安装tensorflow-gpu,但是官方tf网上没有对应的版本,所以我们找了好久,找到一个其他人编译好的tensorflow on arm的gi ...
随机推荐
- PatentTips – GPU Saving and Restoring Thread Group Operating State
BACKGROUND OF THE INVENTION The present invention relates generally to single-instruction, multiple- ...
- Cocoa -- 添加和移除开机启动项
一 写plist到~/Library/LaunchAgents/ 目录下 // 配置开机默认启动 -(void)installDaemon{ NSString* launchFolder = [NSS ...
- 关于使用freemarker导出word
java使用FreeMarker导出word 一. 先做一个word模板 二. 将该word文件另存为xml格式(注意是另存为,不是直接改扩展名) 三. 打开xml文件把要 ...
- Ubuntu 16.04切换/home中文目录为英文目录
其实这个方法是具有技巧性的,不建议使用. 1.先转换成英文 sudo gedit /etc/default/locale 将内容改为: LANG=”en_US.UTF-8″ LANGUAGE=”en_ ...
- Ubuntu 16.04安装Chrome浏览器
一.先有一个hosts能访问Google 参考:http://www.cnblogs.com/EasonJim/p/5999060.html 二.安装方法有两种,如下所示: 1.下载deb包(推荐) ...
- W3School Memcached教程(安装/基本操作/高级操作/命令)
来自W3School的Memcached教程,基本上涵盖了从安装到状态监控的教程. 不过最全的应该是官方提供在GitHub上的Wiki教程,一切的标准都来自官方,参考:https://github.c ...
- Vue插槽的另外一些特性
之前有个项目,想判断一下,某一个模板内的插槽是否被使用. 不知道是不是问题过于简单,网上没有这方面的说明.我就抽时间验证一下vue插槽相关的一些功能. 然后写下这篇随笔,希望对后来人能有一些帮助. 简 ...
- 将list转为json字符串
//确保JSP和servlet的编码方式一致 resp.setContentType("text/html;charset=GBK"); List<String> jy ...
- jq 笔记
http://bbs.miaov.com/forum.php?mod=forumdisplay&fid=40 2014.10.10jquery 2.0 不兼容ie 6 7 8,以上更适合做移动 ...
- JavaScript初探之——图片移动
在我们打开页面的时候我们看到的大部分页面都是动态的,曾经学习VB的时候要实现一些动态的画面第一个想到的就是用Flash,如今学习了BS的东西,才算是开眼界了,刚刚学习了一个动画的效果,给大家展示一下. ...