tomcat10安装问题

本文章是在Linux系统环境下, 原理适用windows, 应该也适用其它Tomcat版本.

JDK17没有jre问题

只指定JAVA_HOME就可以了. 新版的JDK(JDK9,11,13,17)的确不包含JRE. 虽然jre可以使用下面的命令生成(会生成到当前目录下),但是不要这么干,因为tomcat只能使用jdk和jre其中之一启动,如果用jre启动后面还有坑. jlink --module-path jmods --add-modules java.desktop --output jre

使用jre启动报错

WARNING: Unknown module: java.rmi specified to --add-opens Exception in thread "main" java.lang.NoClassDefFoundError: java/util/logging/Logger

把jre环境变量去掉,只保留JAVA_HOME就可以了

setenv.sh指定JAVA_OPTS问题

JDK8(含)以后,永久代被移除了,所以虚拟机的启动参数PermSize和MaxPermSize不可用。 去掉这两个参数就行了.

HTTPS配置问题

这个问题在网上找了很多,各种配置的都有,费半天劲都没解决我的问题.最后还是看日志一个一个解决问题靠谱.

使用不同的插件执行SSL配置不同,详见官网配置说明 我用的是Tomcat Native Control,配置如下

xml 复制代码
    <Connector port="8083" protocol="org.apache.coyote.http11.Http11NioProtocol"
            maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
            clientAuth="false"
            maxHttpHeaderSize="8192"
            >
        <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
        <SSLHostConfig sslProtocol="TLS">
            <Certificate certificateKeystoreFile="conf/yilv/yilvzhuan.com.pfx"
            certificateKeystorePassword="xxx"
            type="RSA" />
        </SSLHostConfig>
   </Connector>

如果还有什么问题, 详细看一下错误日志 catalina.out里的错误

initializeSSL

缺少或找不到依赖安装依赖就行了。

  1. 报错: The Apache Tomcat Native library which allows using OpenSSL was not found on the java.library.path: [/usr/java/packages/lib:/usr/lib64:/lib64:/lib:/usr/lib] 有两种可能: 原因1: Apache Tomcat Native没装 解决办法: 百度一下安装方法

原因2: 装了,但是不在给的这些路径里 在 bin/setclasspath.sh 最前面增加环境变量LD_LIBRARY_PATH的配置, 需要将Apache Tomcat Native的目录加进去, 我的装在了$CATALINA_HOME/lib里。或者你会用libtool工具把lib复制一份到原因1的路径里.

shell 复制代码
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CATALINA_HOME/lib
export LD_LIBRARY_PATH

No SSLHostConfig element

日志显示OpenSSL successfully initialized 但后面报错 No SSLHostConfig element was found with the hostName [default] to match the defaultSSLHostConfigName for the connector [https-openssl-nio-8443] 那就是配置里的Connector下缺少SSLHostConfig配置,对照我的配置或官网的配置纠正一下.

相关推荐
diving deep2 小时前
springboot集成日志配置文件
java·spring boot·后端·logback
源码云商3 小时前
基于 SpringBoot + Vue 的海滨体育馆管理系统设计与实现
vue.js·spring boot·后端
Themberfue5 小时前
RabbitMQ ⑥-集群 || Raft || 仲裁队列
linux·运维·分布式·后端·rabbitmq·ruby
不争先.8 小时前
Pycharm和Flask的学习心得(4和5)
后端·python·flask
编程乐学(Arfan开发工程师)10 小时前
16、最佳实践-SpringBoot应用如何编写
java·spring boot·后端
fashia11 小时前
Java转Go日记(五十六):gin 渲染
开发语言·后端·golang·go·gin
养-乐多11 小时前
梳理Spring Boot中三种异常处理
java·spring boot·后端
Code哈哈笑11 小时前
【基于SpringBoot的图书购买系统】深度讲解 分页查询用户信息,分析前后端交互的原理
java·数据库·spring boot·后端·spring·交互
.生产的驴12 小时前
Vue3 数据可视化屏幕大屏适配 页面自适应 响应式 数据大屏 大屏适配
java·c++·vue.js·后端·信息可视化·前端框架·vue
源码云商12 小时前
基于 Spring Boot + Vue 的墙绘产品展示交易平台设计与实现【含源码+文档】
vue.js·spring boot·后端