Spring的項目在spring boot之前一般我都是打成war包發布到tomcat的,但最近使用了spring boot 要打成jar包,一開始不理解為啥有要打成jar,war包不是很好嗎?
另外一點是由於現在還不會打jar包,所以感覺沒必要。經過一段時間的適應,感覺打jar包是很有必要的,而且發布也很方便了省去了安裝tomcat等中間件。
說下如何打jar包把,其實很簡單,主要是配置好pom.xml文件就可以了,關鍵點如下:
一定要寫jar。
在<bulid>中添加如下配置:
<build>
<!-- 打成jar包的名稱 -->
<finalName>gateway</finalName>
<plugins>
<!-- 需要引用的jar包 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
<!-- <finalName>gateway</finalName> -->
</build>
<!-- 倉庫地址 -->
<repositories>
<repository>
<id>spring-milestone</id>
<url>http://repo.spring.io/libs-release</url>
</repository>
</repositories>
配置好這些后,使用工具,我使用的是myeclipse,mvan update項目。
使用工具myeclipse打jar包。
第一步:使用debug configurations 配置的方式打包
第二步:顯示出debug configuratons 的頁面,
1選中Maven Bulid 下面的項目;
2 Goals選項中輸入package
3 點擊Debug按鈕。
第三步:控制台輸出了 1處的信息:BUILD SUCCESS
2項目的target文件夾下處理了 gateway.jar說明jar包打包完畢。
第四步測試jar包是否可用
使用命令窗體,切入到jar存在的目錄;執行java –jar ***.jar
最好出現下圖信說明jar啟動完畢。
使用瀏覽器測試。項目可用登錄。
第五步關閉jar包啟動的線程。
1.如果是window系統,直接關閉命令窗體就可以了。
2.如果是linux系統,使用ps命令找到對應線程 ,在使用kill命令殺死線程。
再說最簡單的打jar方式,使用命令切入到項目的路徑下,執行:mvn package 就會自己打包的,打包完成后在項目輸出目錄target中可用看到對應的jar包。
已經開始打包了。
打包完成。
Jar會打了,那如果要打war包那。
打spring boot項目建議還是不要打war包,因為這是淘汰的方式。但如果要打,在pom.xml文件中配置:
<bulid>中配置如下信息,就可以使用eclipse導出war包了:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<warSourceExcludes>src/main/resources/**</warSourceExcludes>
<warName>gateway</warName>
</configuration>
</plugin>