Maven中clean、compil等操作介紹和Pom.xml中各個標簽介紹

文章目錄

  • 前言
  • Maven常用命令
    • 1.clean
    • 2.vaildate
    • 3.compile
    • 4.test
    • 5.package
    • 6.verify
    • 7.install
    • 8.site
    • 9.deploy
  • pom.xml標簽詳解
    • 格式
    • <?xml version="1.0" encoding="UTF-8"?>(xml版本和編碼)
    • modelVersion(xml版本)
    • groupId(項目的組名,通常是反轉的域名,比如com.example)
    • artifactId(項目唯一標識符,通常是項目的名稱)
    • version(項目的版本好)
    • packaging(項目打包方式,通常是jar、war、pom。默認是jar)
    • name(項目名)
    • description(項目描述)
    • licenses(許可證聲明)
    • developers(開發者信息)
    • url(項目主頁,提供項目網址)
    • modules(子模塊信息)
    • parent(父模塊信息)
    • properties(統一管理項目中常用的屬性,比如版本號,路徑等信息)
    • dependencies(項目依賴信息)
    • repository(指定倉庫)
    • build(定義項目的構建配置,包括源代碼目錄、資源目錄、插件等)
    • plugins(定義 Maven 插件, plugins 主要用于擴展 Maven 的功能)

前言

現在java開發使用最多的就是springboot項目,使用springboot項目最多的就是maven工具,記錄一下常用的命令,以免忘記

在這里插入圖片描述

Maven常用命令

1.clean

刪除由以前的生成的所有文件。

2.vaildate

驗證項目是否正確,以及所有必要的信息是否可用。

3.compile

編譯 Java 源代碼。

4.test

使用合適的單元測試框架測試編譯的源代碼,這些測試不應該要求打包或部署代碼。

5.package

將編譯后的代碼打包為可分發的格式,例如JAR。

6.verify

驗證-對集成測試的結果進行任何檢查,以確保符合質量標準

7.install

將包安裝到本地存儲庫中,用作本地其他項目的依賴項。

8.site

生成項目的現場文檔 。

9.deploy

在構建環境中完成,將最終包復制到遠程存儲庫,以便與其他開發人員和項目共享。

pom.xml標簽詳解

格式

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.example</groupId><artifactId>example-proj</artifactId><version>1.0.0</version><name>Example Project</name><description>This is an example Maven project.</description><url>http://www.example.com/</url><licenses>   <!-- 許可證 --><license><name>The Apache Software License, Version 2.0</name><url>http://www.apache.org/licenses/LICENSE-2.0.txt</url><distribution>repo</distribution></license></licenses><developers>     <!-- 開發者信息 --><developer><id>developer1</id><name>Developer One</name><email>developer1@example.com</email><organization>Example Organizations Inc.</organization><organizationUrl>http://www.example-organizations.com/</organizationUrl><roles><role>developer</role></roles><timezone>-5</timezone></developer></developers><dependencies>  <!-- 依賴項 --><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>5.2.1.RELEASE</version></dependency></dependencies><build>   <!-- 項目構建 --><plugins>   <!-- 插件配置 --><plugin><artifactId>maven-compiler-plugin</artifactId><version>3.8.1</version><configuration><source>1.8</source><target>1.8</target></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin</artifactId><version>3.2.0</version><configuration><archive><manifest><addClasspath>true</addClasspath><mainClass>com.example.App</mainClass></manifest></archive></configuration></plugin></plugins></build>
</project>

<?xml version="1.0" encoding="UTF-8"?>(xml版本和編碼)

modelVersion(xml版本)

groupId(項目的組名,通常是反轉的域名,比如com.example)

artifactId(項目唯一標識符,通常是項目的名稱)

version(項目的版本好)

packaging(項目打包方式,通常是jar、war、pom。默認是jar)

name(項目名)

description(項目描述)

licenses(許可證聲明)

developers(開發者信息)

url(項目主頁,提供項目網址)

modules(子模塊信息)

parent(父模塊信息)

properties(統一管理項目中常用的屬性,比如版本號,路徑等信息)

<properties><project.name>demo-project</project.name><project.version>1.0.0</project.version><jdk.version>1.8</jdk.version>
</properties>

dependencies(項目依賴信息)

<dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>5.2.1.RELEASE</version></dependency>
<groupId>:指定依賴項的groupId,項目的組名
<artifactId>:指定依賴項的artifactId,項目的唯一標識符
<version>:指定依賴項的版本號。
<scope>:指定依賴項在項目中的使用范圍。常用的有compile、test、provided 和 runtimecompile: 依賴庫默認的 scope,表示該依賴庫在編譯、測試、運行時均需要使用。provided: 表示該依賴庫只在編譯和測試時需要使用,而在運行時已經被系統或者容器提供,所以不需要打包到最終的應用程序中。runtime: 表示該依賴庫只在運行時需要使用,而在編譯和測試時則不需要。test: 表示該依賴庫只在測試時需要使用,而在編譯和運行時則不需要。 比如說我們引入了 junit 包,但顯然這個包我們不需要在打包時包含,只是用于測試,那么我們就可以將 junit 的 scope 設置為 test。

repository(指定倉庫)

<repositories><repository><id>aliyun-maven</id><name>aliyun-maven</name><url>https://</url></repository>
</repositories>
<id>:指定Maven倉庫的ID。
<name>:指定Maven倉庫的名稱。
<url>:指定Maven倉庫的URL

build(定義項目的構建配置,包括源代碼目錄、資源目錄、插件等)

<project>.... 省略其他部分<build><sourceDirectory>src/main/java</sourceDirectory><!--代碼路徑--><resources><resource><directory>src/main/resources</directory><!--資源文件路徑--></resource></resources><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.8.1</version><configuration><source>1.8</source><target>1.8</target></configuration></plugin></plugins></build>
</project>

plugins(定義 Maven 插件, plugins 主要用于擴展 Maven 的功能)

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

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

相關文章

Centos7.6安裝JDK 1.8教程

前提&#xff1a;先把jdk1.8文件上傳到usr/local目錄下&#xff0c;文件名如&#xff1a;jdk-8u151-linux-x64.tar.gz 1. 解壓 JDK 壓縮包 假設 jdk-8u151-linux-x64.tar.gz 文件位于 /usr/local 目錄下。 進入 /usr/local 目錄&#xff1a; cd /usr/local 解壓文件&#…

EuroCropsML:首個面向少樣本時間序列作物分類的多國基準數據集

2025-04-15&#xff0c;由慕尼黑工業大學等機構創建的 EuroCropsML 數據集&#xff0c;這是一個結合了農民報告的作物數據與 Sentinel-2 衛星觀測的時間序列數據集&#xff0c;覆蓋了愛沙尼亞、拉脫維亞和葡萄牙。該數據集為解決遙感應用中作物類型數據空間不平衡問題提供了新的…

將python項目打包成Windows后臺服務

前文,我開發了一個基于windows11與本地deepseek實現的語音助手,之前是通過CMD直接執行項目的main.py文件。但是這樣不適合移植,現在想將其生成一個exe文件,以及部署成windows的后臺服務。 關于語音助手的開發與發布,可以看的CSDN文章:一個基于windows11與本地deepseek實…

yolov8復現

Yolov8的復現流程主要包含環境配置、下載源碼和驗證環境三大步驟&#xff1a; 環境配置 查看電腦狀況&#xff1a;通過任務管理器查看電腦是否有獨立顯卡&#xff08;NVIDIA卡&#xff09;。若有&#xff0c;后續可安裝GPU版本的pytorch以加速訓練&#xff1b;若沒有&#xff0…

Yocto項目實戰教程 · 第4章:4.1小節元數據

&#x1f50d; B站相應的視頻教程&#xff1a; &#x1f4cc; Yocto項目實戰教程-第4章-4.1小節-元數據 記得三連&#xff0c;標為原始粉絲。 在嵌入式Linux系統構建中&#xff0c;Yocto項目憑借其高度模塊化、可配置的特性成為主流工具。而其背后的關鍵支撐之一&#xff0c;便…

《AI大模型應知應會100篇》第23篇:角色扮演技巧:讓AI成為你需要的專家

第23篇&#xff1a;角色扮演技巧&#xff1a;讓AI成為你需要的專家 摘要 在當今人工智能快速發展的時代&#xff0c;大模型已經不僅僅是簡單的問答工具&#xff0c;它們可以通過角色扮演技巧模擬各類專家身份&#xff0c;從而為用戶提供更專業、更有針對性的服務。本文將深入探…

Windows系統安裝RustDesk Server的詳細步驟和客戶端設置

Windows系統安裝RustDesk Server的詳細步驟 在Windows系統上安裝RustDesk Server涉及幾個關鍵步驟,包括安裝必要的依賴、下載RustDesk Server程序、配置并啟動服務。以下是詳細的步驟: 1. 安裝Node.js和PM2 RustDesk Server的某些版本可能需要Node.js環境來運行,而PM2是一…

如何實現一個構造函數繼承另一個構造函數的屬性和方法?給出ES5和ES6兩種方式

在 JavaScript 中&#xff0c;構造函數繼承可以通過 原型鏈 和 構造函數調用 實現。以下是 ES5 和 ES6 的實現方式&#xff1a; ES5 實現方式 關鍵步驟 繼承實例屬性&#xff1a;在子構造函數中調用父構造函數的 call/apply&#xff0c;綁定 this。繼承原型方法&#xff1a;將…

AWS Redshift的使用場景及一些常見問題

Redshift 不是關系型數據庫, 提供了Amazon Redshift Serverless 和 Amazon Redshift 都是構建于 Redshift 數倉引擎之上的&#xff0c;但它們適用的場景不同。Redshift和Dynamodb都可以存儲數據, 分別怎么選擇? 這里記錄一些常見的問題和場景。 1. 如何選擇用Amazon Redshift…

十五種光電器件綜合對比——《器件手冊--光電器件》

十五、光電器件 名稱 原理 特點 應用 發光二極管&#xff08;LED&#xff09; 基于半導體材料的電致發光效應&#xff0c;當電流通過時&#xff0c;電子與空穴復合&#xff0c;釋放出光子。 高效、節能、壽命長、響應速度快、體積小。 廣泛用于指示燈、照明、顯示&#…

Electricity Market Optimization(VI) - 機組組合模型以及 Gurobi 求解

本文參考鏈接&#xff1a;link \hspace{1.6em} 機組組合問題在電力系統中非常重要&#xff0c;這個問題也是一個優化問題&#xff0c;研究的就是如何調度現有的機組&#xff0c;調度的對象是以煤炭、石油、天然氣為燃料的火力發電機以及水力發電機等可預測處理的發電機組&#…

linux多線(進)程編程——(8)多進程的沖突問題

前言 隨著時間的推移&#xff0c;共享內存已經在修真界已經淪為禁術。因為使用這種方式溝通的兩人往往會陷入到走火入魔的狀態&#xff0c;思維扭曲。進程君父子見到這種情況&#xff0c;連忙開始專研起來&#xff0c;終于它們發現了共享內存存在的問題&#xff1a; 進程間沖…

網絡層IP協議知識大梳理

全是通俗易懂的講解&#xff0c;如果你本節之前的知識都掌握清楚&#xff0c;那就速速來看我的IP協議筆記吧~ 自己寫自己的八股&#xff01;讓未來的自己看懂&#xff01; &#xff08;全文手敲&#xff0c;受益良多&#xff09; 網路基礎3 網路層 TCP并沒有把數據發到網路…

數據結構與算法學習導航

目錄 指導思想資料總結代碼隨想錄hello-algoOI-WIKI 一名麻瓜的刷leetcode的簡單概述。 在這里對過去的自己說: 如果你相信算法有用你就刷刷leetcode&#xff0c;如果不相信面試會讓你相信。 當然&#xff0c;現在我確實認為算法和數據結構有用&#xff0c;leetcode也有用。 …

【網絡安全】誰入侵了我的調制解調器?(二)

文章目錄 針對 TR-069 協議 REST API 的攻擊思路攻擊百萬臺調制解調器意外發現 Cox 后端 API 的授權繞過漏洞確認我們能夠進入任何人的設備訪問和更新任何Cox商業客戶賬戶通過泄露的加密密鑰覆蓋任何人的設備設置執行對任何調制解調器的命令影響最后想說閱讀本文前,請先行瀏覽…

大模型在急性單純性闌尾炎預測及治療方案制定中的應用研究

目錄 一、引言 1.1 研究背景與意義 1.2 研究目的 1.3 研究方法與創新點 二、急性單純性闌尾炎概述 2.1 定義與發病機制 2.2 臨床表現 2.3 傳統診斷方法 三、大模型在急性單純性闌尾炎預測中的應用 3.1 大模型簡介 3.2 數據收集與處理 3.3 模型訓練與優化 3.4 預測…

Linux 上安裝和配置 VNC 遠程桌面

在 Linux 上安裝和配置 VNC&#xff08;Virtual Network Computing&#xff09;可以讓你遠程訪問圖形化桌面環境。以下是詳細的安裝和配置步驟&#xff0c;適用于主流 Linux 發行版&#xff08;如 Ubuntu、CentOS、Debian 等&#xff09;。 1. 安裝 VNC 服務器 Ubuntu/Debian …

《AI大模型應知應會100篇》第22篇:系統提示詞(System Prompt)設計與優化

第22篇&#xff1a;系統提示詞(System Prompt)設計與優化 摘要 在大語言模型&#xff08;LLM&#xff09;應用中&#xff0c;系統提示詞&#xff08;System Prompt&#xff09;是控制模型行為的核心工具之一。它不僅定義了模型的身份、角色和行為規范&#xff0c;還直接影響輸…

其他網頁正常進入,但是CSDN進入之后排版混亂

顯示不正常&#xff0c;排版混亂 解決方法&#xff1a; ①打開網絡設置 ②更改適配器 ③所連接的網絡 --右鍵 屬性 然后就可以正常訪問了。

Qwen2.5-VL視覺大語言模型復現過程,沒碰到什么坑

視頻講解&#xff1a;Qwen2.5-VL視覺大語言模型復現過程&#xff0c;沒碰到什么坑_嗶哩嗶哩_bilibili Qwen2.5-VL視覺大語言模型復現過程&#xff0c;沒碰到什么坑 今天復現下Qwen2.5-VL玩玩 https://github.com/QwenLM/Qwen2.5-VL 創建conda環境&#xff0c;實測22.04&#x…