添加一個插件java
<!-- 打包插件 --> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>
這種使用SpringBoot內嵌的Tomcat進行部署。SpringBoot在不指定打包的時候默認jar包形式web
<packaging>jar</packaging>
使用命令啓動部署spring
java -jar xxx.jar
添加插件如上apache
打包方式修改成wartomcat
<packaging>war</packaging>
添加tomcat插件,spring boot自己有一個內嵌的tomcat,若是不作其餘配置直接打包,就會生成一個jar包。 因此咱們引入外部tomcatspringboot
<!-- 外部 tomcat --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </dependency>
在啓動類中作以下配置,繼承SpringBootServletInitializer,重寫configure方法app
@SpringBootApplication public class MyApplication extends SpringBootServletInitializer { public static void main(String[] args) { SpringApplication.run(MyApplication.class, args); } @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { return builder.sources(MyApplication.class); } }
打包(war)webapp
mvn clean package
部署,拷貝war包到tomcat的webapps路徑下,啓動tomcatmaven
注意:這種war包方式端口號使用tomcat的,項目名使用war包的名字,對於application.yml配置文件裏指定的端口號和項目名會覆蓋掉。ide
使用maven的打包插件,打包方式仍是如上。
<build> <!--設置maven-war-plugins插件,不然外部依賴沒法打進war包 --> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <configuration> <webResources> <resource> <directory>src/main/resources/jar/</directory> <targetPath>WEB-INF/lib</targetPath> <filtering>false</filtering> <includes> <include>**/*.jar</include> </includes> </resource> </webResources> </configuration> </plugin> </plugins> </build>
注意:打包插件不能再用springboot提供的