用gradle搭建的SpingBoot專案打包為jar包部署到伺服器上(簡單的方式)
工具為 IDEA
第一步:在gradle.build配置檔案中設定啟動類
第二部:開啟gradle視窗,找到build->task->jar然後就打包成jar檔案啦,可以在專案build目錄下找到
關於jar檔案的結構:解壓jar包,可以看到包含三個資料夾
其中SpringBoot提供的bootstrap的類是放到包的最外面,比如上面的org.springframework.boot.loader。 應用程式自己的程式碼則是需要放到BOOT-INF/classes目錄下面;然後應用程式自己依賴的其它的jar檔案則需要放到BOOT-INF/lib目錄下。example.jar | +-META-INF | +-MANIFEST.MF //配置類 +-org | +-springframework //springboot的框架 | +-boot | +-loader | +-<spring boot loader classes> +-BOOT-INF +-classes //部署到伺服器的內容,網頁呀,主入口類什麼的 | +-mycompany | +-project | +-YourClasses.class +-lib +-dependency1.jar //依賴的jar包 +-dependency2.jar
當這個jar作為standardalone的程式執行時(沒有放到container),SpringBoot會在生成的META-INF/MANIFEST.MF裡面將Main-Class設定成org.springframework.boot.loader.JarLauncher,JarLauncher類會建立一個spring自己的ClassLoader: LaunchedURLClassLoader, 這個classloader 會就能通過URL來載入上面BOOT-INF/lib裡面所依賴的包,並且通過反射Manifest裡面的Start-Class裡面定義的類,然後invoke這個類裡面的main方法。
war檔案結構
example.war | +-META-INF | +-MANIFEST.MF +-org | +-springframework | +-boot | +-loader | +-<spring boot loader classes> +-WEB-INF +-classes | +-com | +-mycompany | +-project | +-YourClasses.class +-lib | +-dependency1.jar | +-dependency2.jar +-lib-provided +-servlet-api.jar +-dependency3.jar
同樣的,當用spring-boot來執行一個war包時,應當把依賴包放到WEB-INF/lib目錄。然後對於應用程式依賴的jar,但傳統的web container會提供的JAR,但需要把它們放到WEB-INF/lib-provided。這樣就可以以下面的方式來啟動這個war了: jar -jar example.war。
下面還有就是用自動配置的方式打包為jar包了,現在還不太熟悉,以後再寫吧~
相關推薦
用gradle搭建的SpingBoot專案打包為jar包部署到伺服器上(簡單的方式)
工具為 IDEA第一步:在gradle.build配置檔案中設定啟動類第二部:開啟gradle視窗,找到build->task->jar然後就打包成jar檔案啦,可以在專案build目錄下找到關於jar檔案的結構:解壓jar包,可以看到包含三個資料夾example
idea中maven專案打包為jar
在idea中打包maven專案時有很多解決的方案,可出乎意料的是,使用某些方案時有一些未知的錯誤情況。經過測驗後,記錄了下面一種簡單有效的方法 在pom.xml中新增 <build> <plugins> &l
eclipse下將maven專案打包為jar(1.不帶第三方jar,2.帶第三方jar),親測有效
由於專案需要講maven專案打包為jar包,由於之前沒類似經驗,百度找例子走了不少彎路,這邊隨手記錄下,網上說的 開發工具:eclipse jar包管理:maven 一般打包出來的jar包分為兩種 一類是沒用引用第三方jar包的,他是不能不能直接用的,需要把你打的ja
在Eclipse中將Java專案打包為jar
如果自己的java project中需要引用額外的jar包作為資原始檔,那麼需要自己自定義配置檔案MANIFEST.MF ,內容示例如下:Manifest-Version: 1.0Class-Path: lib/crimson.jar lib/jbcl.jar lib/jun
將Eclipse中Java專案打包成jar包並生成可獨立執行的exe檔案
目錄 1、準備工作 (1)JAR file和Runnable JAR file,它們的不同點在哪? The runnable jar contains a MANIFEST.MF file, which defines the Main class
AndroidStudio將專案打包成jar包的簡單方法
以下內容是根據網上的方法進行驗證後的總結。 在AndroidStudio中將專案打包成jar包的方法: 在build.gradle檔案中,修改下面兩個地方: (1)apply plugin:'com.android.application' 改為 apply plug
android將專案打包成jar包使用
將Android打包成jar包供人使用,可利用java的反射技術,獲取相應的id.方便使用者替換自己所需要的。 1.新建Android專案:ActivityLibrary,這就是需要我們打包成jar包的專案: 2.MResource這個類的作用,就是利用J2SE反射技術獲
SpringBoot 如何將專案打包成jar包?
最近瀏覽器一上傳圖片,檔案,就無響應,也沒找到解決辦法,可能電腦改換了o(╥﹏╥)o 1.首先在pom.xml檔案中匯入Springboot的maven依賴 <!--將應用打包成一個可以執行的jar包--> <build>
eclipse maven專案打包成jar包
這裡介紹常見的兩種打jar包的方法 1.在pom.xml配置檔案中新增如下資訊,可生成普通的jar包: <packaging>jar</packaging>或者不加,也會預設打成jar包 然後通過maven快捷命令 maven-install打包(
在IDEA中將SpringBoot專案打包成jar包的方法
SpringBoot專案無需依賴tomcat容器(內含)就可以釋出,現在將打包步驟記錄一下:1. 打包前確認專案可以正常執行,開啟Project Structure 快捷鍵 Ctrl+Shift+Alt+S,或者點選下圖圖示2. 將程式碼打包,操作如下圖所示:3.如下圖,mo
maven專案 打包成jar包無法打入本地jar包的解決辦法
專案中想要使用本地的jar包的時候,我們在編譯器中可以匯入,並且在打包成war包的時候也能打入進去,但是將專案打包成jar包的時候 卻無法打入。因為jar包中 jar的檔案打包在了BOOT-INF中。如下圖 這裡可以看到,maven中的jar包全部在這裡,
將java專案打包成jar包並生成可獨立執行的exe檔案
專案要求,需要將java專案生成exe檔案,網上有許多文章,可有些直接複製,現將自己的整理出來: 一:思路: 1、將java專案打包成jar包 2、將jar包生成exe檔案 二:準備工作: jar檔案生成exe檔案用到第三方軟體:exe4j 本機上已安裝好jdk環境。
maven將專案匯出為jar包並且包含依賴包一起匯出
1、pom.xml檔案中加入如下配置資訊: <plugins> <plugin> <artifactId> maven-assembly-plugin <
Spring-boot將專案打為jar包釋出
spring-boot 的專案打包成一個可執行的 jar 包,然後通過 java -jar 命令去啟動相應的服務 pom.xml中新增maven外掛 <build>
Java專案打包成.Jar包並設定成Windows定時任務定時執行
在搞NC介面的時候,需要把程式碼打包成.Jar包,並能定時自動執行: 步驟如下: 1:把Java專案打包成jar包(通過Eclipse工具進行打包,過程省略!) 2:建立一個批處理檔案(bat檔案)
Maven專案打包及jar包與war包的區別
今日部署專案打包,maven專案,老大給了倆bat啟動檔案,路徑配好後,打包一直有毛病,原因未知,只好用傳統方式繼續,順手記錄下打包方法及war包及jar包的區別,看了些文章,摘出一些供以後學習檢視1.打包方式(war包)Maven install 打包:出現 build
springboot打包為jar包的簡單方法
方法描述:使用Maven指令:mvn package 我認為最簡單的方法應該是使用maven 指令進行打包,但是由於maven會進行一些檢測,所以我打包這個花了很長時間……其實是非常非常非常簡單的,但是好像我配置的mchange包版本有問題,每次執行mvn packag
Android含資原始檔引用的專案打包成jar包
一、發現問題 最近一個專案臨到收尾,就差最後一步打包了~~ 但卻遇到了一些小問題。這個專案裡面用到Notification,用過notification的人都知道,notification必須設定小圖示setSmallIcon(int icon)
把開源專案打包成jar包匯入到本地倉庫中
1. 把第三方依賴庫下載下來,根據自己想要的功能,修改相應內容。 2. 把修改後的專案打包成jar包(打包成jar,不在贅述),存到本地目錄下。 3. 把該jar包匯入到本地倉庫中: mvn inst
將java專案匯出為jar包+匯出第三方jar包+使用命令列呼叫+傳參
在上一篇文章裡http://blog.csdn.net/u011791526/article/details/52523112,博主介紹了生成檔案MD5值的方式,其實是一段非常簡單的java程式碼,但如果每次都通過執行程式碼來實現這個功能未免顯得太麻煩,所