这两天需要在ubantu服务器部署一下tomcat, 本以为轻轻松松就能搞定的事情但是一直不能成功,就tomcat的安装步骤其实就是下载解压的工程,奈何,每次  运行 ./startup.sh之后 显示的都是

  using: ...

  using:...

  tomcat started.

 之后的第一反应就是看看是不是端口被占用了,然后使用 netstat -ap | grep 8080,查看之后没有显示,就以为端口这边没有问题,没有仔细查看,之后就是重复的更换tomcat的版本了(后来自己意识到这是多么错误的想法,最根本的问题应该是在自己),每次都出现重复的工作之后,无意间看到了一个人的博客说:查看一下自己logs文件夹下面的文件看看是不是端口被占用了,才想起来查看日志文件,一看吓一跳,日志文件竟然只有赤裸裸的一句话“

./catalina.sh: 1: eval: /opt/jdk/jre/bin/java: not found

自己也是很好奇,自己已经在电脑上装过jdk了,理应包含jre(java runtime enviroment)的,而且自己之前一直也在用idea写java程序没有出现jre的问题,但是去jdk安装目录查看了一下,发现确实没有安装jre,就去官网单独下载了jre放到了jdk的安装目录下面,之后重新启动tomcat发现还是started,但是无法访问,又查看了一下logs文件夹,发现logs文件下面额文件变多了,意识到自己可能快要成功就查看了一下 catalina.out日志文件,看了之后发现正常启动额过程中 8080 端口已经被占用了:

java.net.BindException: Address already in use (Bind failed) <null>:8080
at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:413)
at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:728)
at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:452)
at org.apache.coyote.http11.AbstractHttp11JsseProtocol.init(AbstractHttp11JsseProtocol.java:119)
at org.apache.catalina.connector.Connector.initInternal(Connector.java:978)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardService.initInternal(StandardService.java:560)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:840)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.startup.Catalina.load(Catalina.java:654)
at org.apache.catalina.startup.Catalina.load(Catalina.java:679)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:253)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:427)
Caused by: java.net.BindException: Address already in use (Bind failed)
at java.base/java.net.PlainSocketImpl.socketBind(Native Method)
at java.base/java.net.AbstractPlainSocketImpl.bind(Unknown Source)
at java.base/java.net.ServerSocket.bind(Unknown Source)
at java.base/java.net.ServerSocket.<init>(Unknown Source)
at java.base/java.net.ServerSocket.<init>(Unknown Source)
at org.apache.tomcat.util.net.DefaultServerSocketFactory.createSocket(DefaultServerSocketFactory.java:49)
at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:400)
... 17 more

对于java这种一个错误报一大堆错误的。。。。有时候挺无奈的。  好在最后找到的错误的原因,就是安装tomcat可以没有jdk但是必须要有jre.

最新文章

  1. ORA-01439: 要更改数据类型, 则要修改的列必须为空
  2. iOS 开发技术牛人博客
  3. selenium webdriver自动化测试
  4. wmware 怎么 跟主机相互通信
  5. DevExpress.XtraGrid winform试用分享
  6. C/C++程序编译流程(预处理-&gt;编译-&gt;汇编-&gt;链接)
  7. 小记:获取post和get请求。
  8. VBS学习:流程控制语句判断结构
  9. TeeChart的X轴,使用伪装的时间
  10. Glibc辅助运行库 (C RunTime Library): crt0.o,crt1.o,crti.o crtn.o,crtbegin.o crtend.o
  11. AHCI vs NVMe
  12. Bootstrap3 formテキストフィールド横幅の指定の仕方
  13. php 连接mssql
  14. struts2-剩余2
  15. Docker报错 WARNING: IPv4 forwarding is disabled. Networking will not work.
  16. 20180820 JS 片段
  17. webpack2.0学习
  18. j.u.c系列(04)---之AQS:同步状态的获取与释放
  19. Huginn部署到 Heroku
  20. Java基础篇--字符串处理(StringBuffer)

热门文章

  1. Codeforces Round #442 A Alex and broken contest【字符串/常量数组/string类】
  2. 模板—字符串—Manacher
  3. Ubuntu开机启动的方式
  4. 19、Flask实战第19天:CSRF攻击与防御
  5. 6、Flask实战第6天:视图函数Response返回值
  6. P3197越狱
  7. LoadRunner系列之---web_set_sockets_options,解决No buffer space available错误
  8. Android中的MVC,MVP和MVVM
  9. 1.7(学习笔记)过滤器(Fliter)
  10. iOS开发&mdash;&mdash;异常:[__NSCFNumber length]: unrecognized selector sent to instance