spring boot打jar包
之前创建的spring boot项目中的打包方式都是jar,此时使用maven的package命令将项目打成jar包。之后在项目的target目录下可以找到这个jar包,然后在cmd或者IDEA的terminal中进入到这个jar包所在的目录,然后使用下面命令即可运行:
java -jar jar包的名字
web项目的话,此时会使用spring boot内置的tomcat启动,在浏览器中正常访问即可。
spring boot打war包
spring boot也可以打成我们熟悉的war包,此时可以将war包手动部署到tomcat中启动,需要注意的是部署的tomcat需要支持servlet 3.1以上的版本,推荐tomcat9以上的版本。
打成war包就无需内置的tomcat了,内置的tomcat无需打包:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
创建一个类继承SpringBootServletInitializer
package com.monkey1024;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
public class ServletInitializer extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
//这里写上spring boot的启动类的名字
return application.sources(WartestApplication.class);
}
}
通过maven的package命令打包,然后将war包部署到tomcat的webapp目录中,启动tomcat即可。
jar包和war包的对比
打成jar包,方便快捷,不过要替换单个文件的话比较麻烦。
打成war包,可以针对tomcat调优,更换单个文件方便,这里需要手动配置tomcat的环境。