微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

代码适用于嵌入式Apache Tomcat 8,但不适用于9更改了什么?

如何解决代码适用于嵌入式Apache Tomcat 8,但不适用于9更改了什么?

似乎您尚未向Connector嵌入式服务器添加。Tomcat 9不再自动Connector为您添加服务器,因此您必须自己触发它:

package app;

import org.apache.catalina.LifecycleException;
import org.apache.catalina.startup.Tomcat;

public class Main {

    public static void main(String[] args) {

        Tomcat tomcat = new Tomcat();
        tomcat.setPort(8080);
        tomcat.getConnector(); // Trigger the creation of the default connector

        try {
            tomcat.start();
        } catch (LifecycleException e) {
            e.printStackTrace();
        }

        tomcat.getServer().await();
    }
}

值得一提的是,tomcat.getConnector()对于以前的Tomcat版本,添加呼叫也应该是安全的,因此这不必是“仅限Tomcat 9”的事情。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。