【已解决】用Idea将spring boot项目部署到外部tomcat上

前言

绕了好多弯路,踩了无数的坑,还是因为自己太菜了,之前一直在搞前端,第一次琢磨部署,是一次很有趣地经历(解决了就很有趣,没解决就很蛋疼了)

一、准备

tomcat 8下载配置

intellij IDEA 2020 部署tomcat 8

JDK 1.8

二、开始

1.打开IDEA,File -> New -> Project,选择Spring Initializr,然后next。

【已解决】用Idea将spring boot项目部署到外部tomcat上_第1张图片

2.修改工件,下面的Name、package会自动修改;Packaging有两种模式,一种是Jar,一种是War;因为springboot中自带了tomcat,因此可以将项目打成jar,直接运行;后面需要部署到外部tomcat上,可以在xml中修改;版本选择Java8,然后next。

【已解决】用Idea将spring boot项目部署到外部tomcat上_第2张图片

3.设置项目依赖,然后next ,进入下一页 ,设置project name,点击finish完成。

【已解决】用Idea将spring boot项目部署到外部tomcat上_第3张图片

4.创建一个controller包和java类

【已解决】用Idea将spring boot项目部署到外部tomcat上_第4张图片

 5.修改spring boot版本,我改的是2.6.1

【已解决】用Idea将spring boot项目部署到外部tomcat上_第5张图片

 6.修改打包方式

    
    war

 7.引入servlet依赖(其实不引入也可以?不知道,有空来验证,今天又来活了)

    
       javax.servlet
       javax.servlet-api
       4.0.1
       provided
    

8.随后修改启动入口,重写方法

@SpringBootApplication
public class DemoApplication extends SpringBootServletInitializer {

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

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

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

}

 9.然后就可以在maven中点install打包啦,将生成地war包放在tomcat地webapps文件夹下,重启tomcat,访问http://localhost:8080/demo-0.0.1-SNAPSHOT(war包名,可以自定义重命名)/demo/loadData

【已解决】用Idea将spring boot项目部署到外部tomcat上_第6张图片

端口号是tomcat地默认端口,没被占用地话,是不用改滴~

三、避坑

以后再写,累了~

四、相关参考

这篇其实没用上,但留着可以以后参考http://t.csdn.cn/QpjmI这篇思路很清晰,但我去掉内置tomcat运行会报错http://t.csdn.cn/1dl08http://t.csdn.cn/ZIKDlhttp://t.csdn.cn/ZIKDl

你可能感兴趣的:(intellij-idea,tomcat,spring,boot)