项目背景:spring boot + mybatis + maven管理项目
Java打包主要分为jar包、war包,jar包是自带tomcat,可直接运行,而war包必须通过tomcat执行。
1、打jar包
打jar包较为简单
- 通过
packaging
配置打jar包
<groupId>lc.webupload</groupId>
<artifactId>lcwords</artifactId>
<version>1.0.1-SNAPSHOT</version>
<name>lcwords</name>
<packaging>jar</packaging>
<description>Demo project for Spring Boot</description>
- 执行
直接通过java -jar 包名称.jar
2、打war包
- 打包类型
通过packaging
配置打war包
<groupId>lc.webupload</groupId>
<artifactId>lcwords</artifactId>
<version>1.0.1-SNAPSHOT</version>
<name>lcwords</name>
<packaging>war</packaging>
<description>Demo project for Spring Boot</description>
- 修改入口配置
通过configuration
配置入口,war包时需要
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<mainClass>lc.webupload.lcwords.LcwordsApplication</mainClass>
</configuration>
</plugin>
</plugins>
</build>
- 修改代码入口方法
重载SpringApplicationBuilder
方法
@SpringBootApplication
public class LcwordsApplication extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(
SpringApplicationBuilder application) {
return application.sources(LcwordsApplication.class);
}
public static void main(String[] args) {
SpringApplication.run(LcwordsApplication.class, args);
}
}
- tomcat配置
因为网站一般有静态资源,所以需要配置。
配置conf/server.xml
文件,在host
标签下加入
<Context path="" docBase="/包名" reloadable="true" />
这样就可以直接使用http://localhost:8080/地址访问
,而无需加包名,就不会出现静态资源地址问题。