一、项目打包
项目开发结束后,需要打包部署到外部服务器的Tomcat上,主要有几种方式。
1.1 生成jar包
1 | mvn clean package |
排除测试代码后进行打包
1 | mvn clean package -Dmaven.test.skip=true |
打包完成后jar包会生成到target目录下,命名一般是 项目名+版本号.jar
1 | java -jar target/spring-boot-scheduler-1.0.0.jar |
这种方式,只要控制台关闭,服务就不能访问了。下面我们使用在后台运行的方式来启动:
1 | nohup java -jar target/spring-boot-scheduler-1.0.0.jar & |
也可以在启动的时候选择读取不同的配置文件
1 | java -jar app.jar --spring.profiles.active=product |
也可以通过IDEA的Maven工具生成,点击Lifecycle-install,生成jar
1.2 生成war包
- 修改打包类型为war
1 | <packaging>war</packaging> |
- 添加spring-boot-starter-tomcat依赖,scope设置为provided
1 | <dependency> |
- 注册启动类
创建ServletInitializer.java,继承SpringBootServletInitializer ,覆盖configure(),把启动类Application注册进去。外部web应用服务器构建Web Application Context的时候,会把启动类添加进去。
1 | public class ServletInitializer extends SpringBootServletInitializer { |
- 同样也是两种方式执行:
mvn clean package -Dmaven.test.skip=true
通过IDEA的Maven工具生成,点击Lifecycle-package,生成war
二、项目部署
无论是用哪种方式生成,最终都是为了进行部署,war可以直接拷到tomcat的webapps目录下,启动Tomcat即可。