springboot打Jar包和War包
一:打JAR包
在工程的pom.xml中添加以下依賴
<build>
? <plugins>
? ? ?<plugin>
? ? ? ? <groupId>org.springframework.boot</groupId>
? ? ? ? <artifactId>spring-boot-maven-plugin</artifactId>
? ? ?</plugin>
? ?</plugins>
</build>
我們目前的工程采用的是jar 的打包方式,所以我們在執(zhí)行package 命令后,會產(chǎn)生一個jar 包。
我們進(jìn)入到這個目錄用壓縮軟件打開此jar 包,其中我們發(fā)現(xiàn)了一個叫lib 的文件夾,打開lib 文件夾發(fā)現(xiàn)此文件夾下全是工程依賴的jar 包,甚至還有tomcat。這種包含有jar 包的jar包,我們稱之為fatJAR( 胖jar 包)
?
由于fatJAR 本身就包括tomcat , 我們就不需要另外部署了,直接在命令行就可以把我們的應(yīng)用啟動起來,在命令行,進(jìn)入到jar 包所在的目錄,我們可以通過以下java –jar命令來執(zhí)行此jar 包。在控制臺會出現(xiàn)啟動信息,在瀏覽器訪問程序
二:打WAR包
spring-boot 默認(rèn)提供內(nèi)嵌的tomcat,所以打包直接生成jar 包,用java??-jar 命令就可以啟動。但是,有時候我們更希望一個tomcat 來管理多個項目,這種情況下就需要項目是war 格式的包而不是jar 格式的包。
我們按照以下步驟完成對工程的改造
(1)修改pom.xml
將打包方式修改為war
<packaging>war</packaging>
添加依賴
<dependency>
? ? <groupId>org.springframework.boot</groupId>
? ? <artifactId>spring-boot-starter-tomcat</artifactId>
? ? <scope>provided</scope>
</dependency>
spring-boot-starter-tomcat 是原來被傳遞過來的依賴,默認(rèn)會打到包里,所以我們再次引入此依賴,并指定依賴范圍為provided,這樣tomcat 相關(guān)的jar就不會打包到war 里了.
(2)添加ServletInitializer
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.context.web.SpringBootServletInitializer;
public class ServletInitializer extends SpringBootServletInitializer {
? ? ?@Override
? ? ? protected SpringApplicationBuilder configure(SpringApplicationBuilderapplication) {
? ? ? ? ? ? ? return application.sources(Application.class);
? ? ? }
}
由于我們采用web3.0 規(guī)范,是沒有web.xml 的,而此類的作用與web.xml相同。
(3)運行package 打包命令生成war 包
生成后將war 包放入tomcat,啟動tomcat,測試完成的功能是否可以使用。
?
轉(zhuǎn)載于:https://www.cnblogs.com/zlw-xf/p/7828359.html
總結(jié)
以上是生活随笔為你收集整理的springboot打Jar包和War包的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android黑科技系列——静态分析技术
- 下一篇: 微信门店小程序怎样创建 门店小程序创建方