zoukankan      html  css  js  c++  java
  • springboot项目打包外部运行

    注意因为springboot内置的tomcat服务器是8.25,建议使用tomcat9来运行,把war包放到tomcat9下的webapps下面

    直接运行即可。

    1、修改打包方式

    在pom.xml里设置 <packaging>war</packaging>

    2、移除嵌入式tomcat插件(springboot2.0不需要)

    在pom.xml里找到spring-boot-starter-web依赖节点,在其中添加如下代码,

    <dependency>

        <groupId>org.springframework.boot</groupId>

        <artifactId>spring-boot-starter-web</artifactId>

        <!-- 移除嵌入式tomcat插件 -->

        <exclusions>

            <exclusion>

                <groupId>org.springframework.boot</groupId>

                <artifactId>spring-boot-starter-tomcat</artifactId>

            </exclusion>

        </exclusions>

    </dependency>

    3、添加servlet-api的依赖

    <dependency>

        <groupId>org.apache.tomcat</groupId>

        <artifactId>tomcat-servlet-api</artifactId>

        <version>8.0.36</version>

        <scope>provided</scope>

    </dependency>

    4、修改启动类,并重写初始化方法

    我们平常用main方法启动的方式,都有一个App的启动类,代码如下:

    @SpringBootApplication

    public class Application {

        public static void main(String[] args) {

            SpringApplication.run(Application.class, args);

        }

    }

    我们需要类似于web.xml的配置方式来启动spring上下文了,在Application类的同级添加一个SpringBootStartApplication类,其代码如下:

    /**

     * 修改启动类,继承 SpringBootServletInitializer 并重写 configure 方法

     */

    public class SpringBootStartApplication extends SpringBootServletInitializer {

        @Override

        protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {

            // 注意这里要指向原先用main方法执行的Application启动类

            return builder.sources(Application.class);

        }

    }

    5、如果tomcat启动中文乱码了

    就是修改tomcat的conf下的logging.properties中的参数,

    java.util.logging.ConsoleHandler.encoding = GBK
    
    
  • 相关阅读:
    数据库之多表查询
    Sublime 的中文乱码问题
    MySQL连接问题浅析
    对国产操作系统发展的一些思考
    Azure PowerShell 1.0.0以上版本在中国Azure使用的注意事项
    Windows Azure移动终端云服务管理(公测版)
    12月2日,上海Cloud Foundry Summit, Azure Cloud Foundry 团队期待和你见面!
    Android项目:proguard混淆第三方jar.
    MySQL Database on Azure
    物联网操作系统HelloX已成功移植到MinnowBoard MAX开发板上
  • 原文地址:https://www.cnblogs.com/wenwenzuiniucha/p/14502701.html
Copyright © 2011-2022 走看看