Assemby 打包並啟動jar包
期望效果
通過mvn package進行打包的時候生成jar包啟動指令碼 直接對生成的jar包啟動
引入maven外掛
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<!--主要使用的是maven提供的assembly外掛完成-->
<artifactId>maven-assembly-plugin</artifactId>
<version>3.1.0</version>
<configuration> <descriptors> <!--具體的配置檔案--> <descriptor>src/main/assembly/assembly.xml</descriptor> </descriptors> </configuration> <executions> <execution> <id>make-assembly</id> <!--繫結到maven操作型別上--> <phase>package</phase> <!--執行一次--> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin>
在專案目錄下建立如下檔案
具體的檔案內容詳見
https://gitee.com/pingfanrenbiji/resource/tree/master/assembly
通過maven打包
在target目錄下 會生成一個 壓縮包
圈紅部分是assembly啟動指令碼
lib目錄下 是生成的jar包
config目錄是專案中的配置檔案resouces目錄下所有的配置
啟動指令碼啟動jar包
注:該啟動指令碼會讀取config下面的application.yml配置檔案
需要優化的地方
該啟動指令碼只能讀取 application.yml 配置檔案
所以對於多環境配置的情況不能夠使用
這裡優化的思路(等有時間了再完善)
-
從外部傳給該啟動指令碼一個 profile 環境變數
-
通過環境變數找到對應的配置檔案
-
然後把該配置檔案複製成application.yml檔案
本文使用 mdnice 排版
相關文章
- java-jar啟動jar包JavaJAR
- jar包啟動方式JAR
- idea打包jar包IdeaJAR
- jar架包啟動命令JAR
- linux 啟動jar包:在 Linux 上啟動 Java jar 包的方法LinuxJARJava
- jar命令打包與java執行jar包JARJava
- java 啟動檢視jar包載入順序並設定classpathJavaJAR
- java project打包生成jar包(通用)JavaProjectJAR
- CentOS下jar包隨系統啟動CentOSJAR
- IDEA打包工具類jar並混淆IdeaJAR
- Android Studio打包apk,aar,jar包AndroidAPKJAR
- jar打包JAR
- jar 打包JAR
- AndroidStudio打包Library專案成jar包AndroidJAR
- 安裝Nexus並上傳jar包JAR
- maven - 引用本地jar,進行jar包移動MavenJAR
- jar檔案打包JAR
- Mysql java JDBC驅動jar包MySqlJavaJDBCJAR
- Spring Boot啟動後讀取jar包內部檔案Spring BootJAR
- Java 如何打增量 jar 包【修改部分檔案不需全部打包】JavaJAR
- jar包JAR
- sql server jdbc 3jar包驅動 msbase.jar;mssqlserver.jar;msutil.jarSQLServerJDBCJAR
- 精盡Spring Boot原始碼分析 - Jar 包的啟動實現Spring Boot原始碼JAR
- 一個簡單的Linux啟動jar包的shell指令碼LinuxJAR指令碼
- java打包.jar及.exeJavaJAR
- spark 2.1.0 standalone模式配置&&打包jar包透過spark-submit提交Spark模式JARMIT
- Docker安裝java環境並部署jar包執行DockerJavaJAR
- httpmine jar包HTTPJAR
- shell 啟動 java jar 檔案JavaJAR
- gradle專案打包jarGradleJAR
- Qt5打包後缺少dll,啟動失敗問題QT
- 面試官:說說SpringBoot為什麼可以使用Jar包啟動?面試Spring BootJAR
- maven專案打包說有依賴jar包到一個資料夾MavenJAR
- ruoyi vue 前後端分離版本 打包分離jar包至libVue後端JAR
- java修改jar包JavaJAR
- centos 部署jar包CentOSJAR
- ssh所需jar包JAR
- eclipse 手動新增jar包到maven庫EclipseJARMaven