1、打包一般分为两种;一种是打包成jar包直接执行,另一种是打包成war包放到tomcat服务器下。
先来介绍第一种:
打成jar包
如果你使用的是maven来管理项目,执行以下命令既可以打包:
cd 项目跟目录(和pom.xml同级)
mvn clean package
## 或者执行下面的命令
## 排除测试代码后进行打包
mvn clean package -Dmaven.test.skip=true
此时会在target包下生成这两个包(命名一般是 项目名+版本号.jar):
启动jar包命令:
java -jar xczx-0.0.1-SNAPSHOT.jar
后台显示执行成功:
这种方式,只要控制台关闭,服务就不能访问了。如果是linux环境下我们使用在后台运行的方式来启动:
nohup java -jar spring-boot-scheduler-1.0.0.jar &
也可以在启动的时候选择读取不同的配置文件:
java -jar app.jar --spring.profiles.active=dev
也可以在启动的时候设置jvm参数:
java -Xms10m -Xmx80m -jar app.jar &
打成war包
1、maven项目,修改pom包:
<packaging>war</packaging>
2、打包时排除tomcat:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
3、注册启动类
创建ServletInitializer.java,继承SpringBootServletInitializer ,覆盖configure(),把启动类XczxApplication注册进去。外部web应用服务器构建Web Application Context的时候,会把启动类添加进去。
public class ServletInitializer extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(XczxApplication.class);
}
}
最后执行:
mvn clean package