Spring Boot打包方式

匿名 (未验证) 提交于 2019-12-03 00:39:02

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 	<modelVersion>4.0.0</modelVersion>  	<groupId>com.user</groupId> 	<artifactId>zjsz-user</artifactId> 	<version>0.0.1-SNAPSHOT</version> 	<packaging>war</packaging>  	<name>zjsz-user</name> 	<description>Demo project for Spring Boot</description>  	<parent> 		<groupId>org.springframework.boot</groupId> 		<artifactId>spring-boot-starter-parent</artifactId> 		<version>2.0.3.RELEASE</version> 		<relativePath/> <!-- lookup parent from repository --> 	</parent>  	<properties> 		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> 		<java.version>1.8</java.version> 		<jedis_version>2.9.0</jedis_version> 		<swagger_version>2.9.1</swagger_version> 		<spring-cloud.version>Finchley.RELEASE</spring-cloud.version> 	</properties>  	<dependencies> 		<dependency> 			<groupId>org.springframework.boot</groupId> 			<artifactId>spring-boot-starter</artifactId> 			<exclusions> 				<exclusion> 					<groupId>org.springframework.boot</groupId> 					<artifactId>spring-boot-starter-logging</artifactId> 				</exclusion> 			</exclusions> 		</dependency> 		<dependency> 			<groupId>org.springframework.boot</groupId> 			<artifactId>spring-boot-starter-web</artifactId> 			<!-- 移除tomcat插件 --> 			<exclusions> 				<exclusion> 					<groupId>org.springframework.boot</groupId> 					<artifactId>spring-boot-starter-tomcat</artifactId> 				</exclusion> 			</exclusions> 		</dependency> 		<!-- 移除之后会报错,加入下面的依赖 --> 		<dependency> 			<groupId>javax.servlet</groupId> 			<artifactId>javax.servlet-api</artifactId> 			<scope>provided</scope> 		</dependency> 		 	</dependencies>  	<dependencyManagement> 		<dependencies> 			<dependency> 				<groupId>org.springframework.cloud</groupId> 				<artifactId>spring-cloud-dependencies</artifactId> 				<version>${spring-cloud.version}</version> 				<type>pom</type> 				<scope>import</scope> 			</dependency> 		</dependencies> 	</dependencyManagement>  	<build> 		<plugins> 			<plugin> 				<groupId>org.springframework.boot</groupId> 				<artifactId>spring-boot-maven-plugin</artifactId> 				<configuration> 					<fork>true</fork> 				</configuration> 			</plugin>  			<plugin> 				<groupId>org.apache.maven.plugins</groupId> 				<artifactId>maven-compiler-plugin</artifactId> 				<version>3.7.0</version> 				<configuration> 					<source>1.8</source> 					<target>1.8</target> 				</configuration> 			</plugin>  			<!-- maven打包跳过测试类--> 			<plugin> 				<groupId>org.apache.maven.plugins</groupId> 				<artifactId>maven-surefire-plugin</artifactId> 				<version>2.21.0</version> 				<configuration> 					<skipTests>true</skipTests> 				</configuration> 			</plugin>  			<plugin> 				<groupId>org.apache.maven.plugins</groupId> 				<artifactId>maven-war-plugin</artifactId> 				<configuration> 					<warName>user</warName>    <!--外部访问到项目名 http://localhost:8080/user/.....--> 				</configuration> 			</plugin> 		</plugins>  		<!--将xml打包进去--> 		<resources> 			<resource> 				<directory>src/main/java</directory> 				<includes> 					<include>**/*.xml</include> 				</includes> 			</resource> 			<resource> 				<directory>src/main/resources</directory> 			</resource> 		</resources> 	</build>  </project>

然后在修改一下spring boot入口,继承重新SpringBootServletInitializer 里面打configure方法

@SpringBootApplication public class ZjszUserApplication extends SpringBootServletInitializer {      @Override     protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {         return application.sources(ZjszUserApplication.class);     }      public static void main(String[] args) throws Exception {         SpringApplication.run(ZjszUserApplication.class, args);     }  } 

都添加好后,打一个war出来,然后放到Tomcat中去。启动完成。。



2 已jar包方式启动

<packaging>jar</packaging> ....................... <build> 		<plugins> 			<plugin> 				<groupId>org.springframework.boot</groupId> 				<artifactId>spring-boot-maven-plugin</artifactId> 				<configuration> 					<fork>true</fork> 				</configuration> 			</plugin>  			<plugin> 				<groupId>org.apache.maven.plugins</groupId> 				<artifactId>maven-compiler-plugin</artifactId> 				<version>3.7.0</version> 				<configuration> 					<source>1.8</source> 					<target>1.8</target> 				</configuration> 			</plugin>  			<!-- maven打包跳过测试类--> 			<plugin> 				<groupId>org.apache.maven.plugins</groupId> 				<artifactId>maven-surefire-plugin</artifactId> 				<version>2.21.0</version> 				<configuration> 					<skipTests>true</skipTests> 				</configuration> 			</plugin>  		</plugins>  		<!--将xml打包进去--> 		<resources> 			<resource> 				<directory>src/main/java</directory> 				<includes> 					<include>**/*.xml</include> 				</includes> 			</resource> 			<resource> 				<directory>src/main/resources</directory> 			</resource> 		</resources> 	</build>

最下面打resources最好都加一下,因为有的时候打出来都jar包并不包含resources这个文件夹,会导致启动找不到对应都配置信息。

打包完成后,java -jar xxxxx.jar 启动。效果如下


标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!