“史上最全“ Springboot打包war包并部署Linux

时间:2020-9-12 作者:admin

项目打包

1、配置打包排除test测试类

<!-- pom.xml配置 -->
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <configuration>
        <skip>true</skip>
    </configuration>
</plugin>

2、排除tomcat依赖

<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>

3、添加servlet-api

<dependency>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>servlet-api</artifactId>
    <version>6.0.29</version>
    <scope>compile</scope>
</dependency>

4、忽略web.xml

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.6</version>
    <configuration>
        <failOnMissingWebXml>false</failOnMissingWebXml>
    </configuration>
</plugin>

5、修改启动类,重写configure方法

@SpringBootApplication
@MapperScan("com.example.cas.dao")
public class CasNginxRedisApplication extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(CasNginxRedisApplication.class);
    }

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

}

6、打包

先clean,然后package
在这里插入图片描述然后看到BUILD SUCCESS就成功了,生成的war包在target目录下
在这里插入图片描述

项目部署

1、启动XShell / Sftp上传war包到linux服务器

我上传到了 /opt 下
在这里插入图片描述

2、复制/移动war包到tomcat的webapps目录下

这一步会自动解压,当然也可以手动解压,命令如下: unzip xxx.war -d 目标文件夹

3、修改tomcat配置文件

在这里插入图片描述

4、启动tomcat

命令(当前目录是bin目录): 启动:./startup.sh,关闭:./shutdown.sh

5、其他

如果启动不成功,或者运行有问题,可以在logs目录下catalina.log查看日志。

运行结果

windows
在这里插入图片描述
linux
在这里插入图片描述

声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。