jar
<packaging>jar</packaging>
是SpringBoot项目中pom文件的默认打包类型,可以不写。
直接通过内置tomcat运行,不需要额外安装tomcat。
如需修改内置tomcat的配置,只需要在SpringBoot的配置文件中配置。
内置tomcat没有自己的日志输出,全靠jar包应用输出日志。但是比较方便、快速、简单。
war
<packaging>war</packaging>
传统的应用交付方式,使用外置的Tomcat,即放到webapps目录下运行war包。
可以灵活选择tomcat版本,可以直接修改tomcat的配置,有自己的tomcat日志输出,可以灵活配置安全策略。
但相对来说没有打成jar包方便。
SpringBoot项目打成war包运行需要进行的配置:
- 启动类要继承SpringBootServletInitiailzer类,并复写configure()方法。
@SpringBootApplication
public class FileuploadApplication extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(FileuploadApplication.class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return super.configure(builder);
}
}
- 像Spring项目一样配置外置Tomcat,包括配置Artifacts。
pom
<packaging>pom</packaging>
这种配置的意思是,当前模块是maven分模块管理中的父模块。不需要src目录。