springboot 发布tomcat(war包)

废话不多说

一 下载tomcat

Apache Tomcat® - Apache Tomcat 9 Software Downloads

 

二 修改tomcat配置

1 conf\server.xml

这里我修改了9021端口
<Server port="9021" shutdown="SHUTDOWN">



这里我修改了9022端口,并且增加了URIEncoding="UTF-8"
<Connector port="9022" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8"/>

 

2 logging.properties

这里注释了UTF-8,改为GBK,否则启动时乱码
#java.util.logging.ConsoleHandler.encoding = UTF-8
java.util.logging.ConsoleHandler.encoding = GBK

 

三 修改springboot项目

1 POM

这是为了调试时使用tomcat,但打包时排除tomcat

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-tomcat</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

 

2 启动类

增加了继承SpringBootServletInitializer

并且重写了configure方法

@SpringBootApplication
@EnableProcessApplication
@ComponentScan(basePackages={"com.abc"},lazyInit=true)
public class Application extends SpringBootServletInitializer {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

    @Override
    protected SpringApplicationBuilder configure(
            SpringApplicationBuilder application) {
        return application.sources(Application.class);
    }
}

 

四 打包

运行 mvn clean package

Target目录下,出现了  这个war包。

将他拷贝到Tomcat下的webapps 中

最好修改一下war名称。比如我的是:abc.webCamunda-0.0.1-SNAPSHOT.war

改成 abc.webCamunda.war

 

 五 运行Tomcat

找到 tomcat目录中的bin文件夹,运行当中的startup.bat

 

 六 访问

http://localhost:9022/abc.webCamunda/api/test/test

 

 

 

posted @ 2022-11-11 10:22  正怒月神  阅读(131)  评论(0)    收藏  举报