Springboot項目集成maven-assembly-plugin進行打包

通常我們將應用部署到服務器的某個目錄下,一般情況下我們會提供像target(存放應用jar包),bin(項目啟動/停止腳本),config(項目配置文件),logs(項目輸出日志)之類的目錄。

maven-assembly-plugin 這個插件非常適合用于打包應用程序以便于發布或部署。它是 Apache Maven 中的一個插件,它允許你根據自定義的描述符文件(通常是 assembly.xml)來創建各種格式的歸檔文件(如 ZIP、JAR、TAR.GZ 等),可以輕松的將項目構建輸出、依賴庫、模塊、站點文檔以及其他指定的文件進行打包。

1、修改項目結構添加assembly和bin文件夾。assembly文件夾中的assembly.xml來配置打包規則,bin文件夾中放置啟動/停止腳本。

2、簡單配置assembly.xml

<assembly xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3"xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd"><id>deploy</id><formats><format>dir</format><format>tar.gz</format><format>zip</format></formats><includeBaseDirectory>false</includeBaseDirectory><fileSets><fileSet><directory>./config/</directory><includes><include>**</include></includes><outputDirectory>config</outputDirectory></fileSet><fileSet><directory>./bin/</directory><includes><include>**</include></includes><outputDirectory>bin</outputDirectory><fileMode>0755</fileMode></fileSet></fileSets><files><file><source>target/${artifactId}-${project.version}.jar</source><destName>${project.artifactId}.jar</destName><outputDirectory>./target/</outputDirectory></file><file><source>src/main/resources/application.yml</source><outputDirectory>./config/</outputDirectory></file></files>
</assembly>

3、修改pom文件的<build>標簽內容添加maven-assembly-plugin

<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-assembly-plugin</artifactId><executions><execution><id>make-assembly</id><phase>package</phase><goals><goal>single</goal></goals><configuration><appendAssemblyId>true</appendAssemblyId><descriptors><descriptor>./assembly/assembly.xml</descriptor></descriptors></configuration></execution></executions></plugin></plugins>
</build>

4、使用maven打包看效果

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/72807.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/72807.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/72807.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

CSS3 基礎布局技術與響應式設計

1. CSS3 基礎與布局技術 1.1 Flexbox 布局 Flexbox 是一種一維布局模型&#xff0c;適合用于在一個方向上&#xff08;行或列&#xff09;排列元素。 基本概念&#xff1a; 容器&#xff08;Container&#xff09;&#xff1a;應用 display: flex; 的元素。項目&#xff08…

鴻蒙NEXT項目實戰-百得知識庫01

代碼倉地址&#xff0c;大家記得點個star IbestKnowTeach: 百得知識庫基于鴻蒙NEXT穩定版實現的一款企業級開發項目案例。 本案例涉及到多個鴻蒙相關技術知識點&#xff1a; 1、布局 2、配置文件 3、組件的封裝和使用 4、路由的使用 5、請求響應攔截器的封裝 6、位置服務 7、三…

【DeepSeek應用】本地部署deepseek模型后,如何在vscode中調用該模型進行代碼撰寫,檢視和優化?

若已成功在本地部署了 DeepSeek 模型(例如通過 vscode-llm、ollama 或私有 API 服務),在 VS Code 中調用本地模型進行代碼撰寫、檢視和優化的完整流程如下: 1. 準備工作:確認本地模型服務狀態 模型服務類型: 若使用 HTTP API 服務(如 FastAPI/Flask 封裝),假設服務地址…

jenkins 配置郵件問題整理

版本&#xff1a;Jenkins 2.492.1 插件&#xff1a; A.jenkins自帶的&#xff0c; B.安裝功能強大的插件 配置流程&#xff1a; 1. jenkins->系統配置->Jenkins Location 此處的”系統管理員郵件地址“&#xff0c;是配置之后發件人的email。 2.配置系統自帶的郵件A…

Android Coil3階梯preload批量Bitmap拼接扁平寬圖,Kotlin

Android Coil3階梯preload批量Bitmap拼接扁平寬圖&#xff0c;Kotlin <uses-permission android:name"android.permission.WRITE_EXTERNAL_STORAGE" /><uses-permission android:name"android.permission.READ_EXTERNAL_STORAGE" /><uses-p…

C++基礎 [八] - list的使用與模擬實現

目錄 list的介紹 List的迭代器失效問題 List中sort的效率測試 list 容器的模擬實現思想 模塊分析 作用分析 list_node類設計 list 的迭代器類設計 迭代器類--存在的意義 迭代器類--模擬實現 模板參數 和 成員變量 構造函數 * 運算符的重載 運算符的重載 -- 運…

【系統架構設計師】操作系統 - 特殊操作系統 ③ ( 微內核操作系統 | 單體內核 操作系統 | 內核態 | 用戶態 | 單體內核 與 微內核 對比 )

文章目錄 一、微內核操作系統1、單體內核 操作系統2、微內核操作系統 引入3、微內核操作系統 概念4、微內核操作系統 案例 二、單體內核 與 微內核 對比1、功能對比2、單體內核 優缺點3、微內核 優缺點 一、微內核操作系統 1、單體內核 操作系統 單體內核 操作系統 工作狀態 : …

系統思考:惡性循環

去年&#xff0c;我給一家知名人力資源公司交付了兩個項目——一個在6月&#xff0c;另一個在8月&#xff0c;至今半年多了依然沒有收到課酬。催促多次&#xff0c;得到的答復卻各式各樣&#xff1a;銷售說老板卡了額度&#xff0c;老板說具體情況還需了解。每一次的推諉&#…

基于springboot的房屋租賃系統(008)

摘 要 社會的發展和科學技術的進步&#xff0c;互聯網技術越來越受歡迎。網絡計算機的生活方式逐漸受到廣大人民群眾的喜愛&#xff0c;也逐漸進入了每個用戶的使用。互聯網具有便利性&#xff0c;速度快&#xff0c;效率高&#xff0c;成本低等優點。 因此&#xff0c;構建符…

視頻翻譯器免費哪個好?輕松玩轉視頻直播翻譯

你是不是覺得看外語視頻很麻煩&#xff1f;每次遇到喜歡的外語電影、電視劇或動漫&#xff0c;總是要等字幕組的翻譯&#xff0c;或者因為語言不通而錯過精彩的情節。 這個時候&#xff0c;掌握多語種直播翻譯方案就顯得尤為重要&#xff0c;有了實時字幕&#xff0c;看外語視…

在cherry studio中使用MCP——本地文件管理FileSystem

cherry studio是一款開源的AI助手工具&#xff0c;可以便捷地利用API訪問各種LLM&#xff0c;有關cherry studio的使用這里不再多說&#xff0c;可以參考這篇文章https://blog.csdn.net/m0_65494437/article/details/145478823 官網&#xff1a;https://cherry-ai.com/ MCP是什…

從點燈開始的51單片機生活

陵谷紛紜新事改&#xff0c;筑臺土石未應遲。 目錄 sfr與sbit&#xff1f;不靠定時器的delay_ms延時函數所謂寄存器 sfr與sbit&#xff1f; 這第一課咱們主要來先理解一下sfr與sbit&#xff0c;以下可能是咱們這些新手朋友常見的點燈代碼&#xff1a; #include<regx52.h&g…

Django系列教程(13)——Cookie和Session應用場景及案例

目錄 什么是cookie&#xff0c;cookie的應用場景及缺點 Django中如何使用cookie Cookie使用示例 什么是session及session的工作原理 Django中如何使用會話session Session使用示例 小結 HTTP協議本身是”無狀態”的&#xff0c;在一次請求和下一次請求之間沒有任何狀態保…

c++類和對象(下篇)下

下面就來補充一下c雷和對象最后一點內容. 首先先補充一下上一篇博客上c類和對象(下篇)上-CSDN博客最后學習的靜態成員變量的小練習求123...n_牛客題霸_牛客網 (nowcoder.com)下面就是題解.靈活的運用了靜態成員變量不銷毀的特點,建立數組利用構造函數來完成n次相加. class A{ …

《TCP/IP網絡編程》學習筆記 | Chapter 19:Windows 平臺下線程的使用

《TCP/IP網絡編程》學習筆記 | Chapter 19&#xff1a;Windows 平臺下線程的使用 《TCP/IP網絡編程》學習筆記 | Chapter 19&#xff1a;Windows 平臺下線程的使用內核對象內核對象的定義內核對象歸操作系統所有 基于 Windows 的線程創建進程與線程的關系Windows 中線程的創建方…

分布式事務解決方案:Seata原理詳解與實戰教程

一、為什么需要Seata&#xff1f; 在微服務架構中&#xff0c;跨服務的事務管理成為核心痛點&#xff1a; 傳統事務失效&#xff1a;服務拆分導致無法使用本地事務數據不一致風險&#xff1a;網絡抖動、服務宕機等情況導致數據錯亂復雜場景處理難&#xff1a;涉及多個數據庫、…

docker需要sudo才能使用

一種方法是添加當前用戶到docker組里去&#xff0c;當時添加的時候貌似是沒問題的&#xff0c;但是現在又不可以了 產生的報錯 ? docker images Cannot connect to the Docker daemon at unix:///home/ying/.docker/desktop/docker.sock. Is the docker daemon running?解決…

學習記錄 6 pointnet復現

一、復現代碼 然后去找相關的2d的聲吶圖像分類的算法 融合可以搞的&#xff0c;雖然有文獻但是不多&#xff0c;感覺也是可以的 """ Author: Benny Date: Nov 2019 """import os import sys import torch import numpy as npimport datetime …

Linux 文件操作-標準IO函數3- fread讀取、fwrite寫入、 fprintf向文件寫入格式化數據、fscanf逐行讀取格式化數據的驗證

目錄 1. fread 從文件中讀取數據 1.1 讀取次數 每次讀取字節數 < 原內容字節數 1.2 讀取次數 每次讀取字節數 > 原內容字節數 2.fwrite 向文件中寫入數據 2.1寫入字符串驗證 2.2寫入結構體驗證 3. fprintf 將數據寫入到指定文件 4. fscanf 從文件中逐行讀取內容…

Python 中下劃線 “_” 的多面性:從變量到約定

# Python中下劃線“_”的多面性&#xff1a;從變量到約定 在Python的語法體系里&#xff0c;下劃線“_”看似毫不起眼&#xff0c;實則扮演著極為重要且多樣化的角色。它不僅能作為普通變量參與編程&#xff0c;更在多個特殊場景下有著獨特的用途與約定。深入理解下劃線的各種…