【IDEA】maven如何進行文件導入,配置并打包

一,介紹、安裝

1、maven介紹

maven是一個Java世界中,構建工具。

核心功能:

(1) 管理依賴
管理文件運行的順序邏輯依賴關系。對配置文件,進行構建和編譯。其也是在調用jdk,來進行編譯打包工作。

(2) 打包
通過使用maven,把java代碼構造成war包或者jar包
jar包是一種特殊的壓縮包,它是把各種.class文件放到了一起。

2、安裝Maven

直接使用IDEA軟件內置的 maven
在這里插入圖片描述

3、如何使用搭建idea

  • 創建項目的時候,不選擇java,而是選擇Maven的方式來創建項目
  • groupId:表示你所在的公司/組織
  • Aetifactid:表示當前項目的名字
  • Version:表示當前版本號
  • 以上配置用途:當一個程序,要發布到maven的中央倉庫上,這三個參數就是這個程序在中央倉庫的重要標識
    在這里插入圖片描述

4、目錄結構

/src/main/java 這個目錄用于放java代碼
/src/main/resources這個目錄用于放一些依賴的資源
/src/test/java 這個目錄用來放單元測試代碼
/pom.xml 這個是maven項目的核心配置文件,Maven依賴什么,需要什么配置,都放在這個文件里
在這里插入圖片描述

5、如何使用maven

右側有一個 maven 的控制面板,點開Lifecycle:maven是生命周期。
這些羅列的內容,其實都是可以通過 maven來操作的。
最常用的就是 package,他的功能就是打包,也不僅僅是打包,會執行上面的所有操作。
最終的打包結果,一般是一個 jar 或者 war。
在這里插入圖片描述

6、maven管理依賴

下面以mysql(5.1.47版本)為例,下載并安裝第三方庫
第一步,去中央倉庫找到mysql的驅動包
https://mvnrepository.com/search?q=mysql 進行查找對應版本的mysql的xml配置代碼
在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

第二步:直接復制maven標簽下的xml配置,粘貼到根目錄的pom.xml里面新建的<dependencies></dependencies>標簽中。
在這里插入圖片描述
注意:
1、<dependencies>這個標簽中,可以放多個<dependency>標簽,一個項目可以引入多個依賴。在初始創建下,沒有這個依賴標簽,需要手動創建一個引入后,就會自己去下載依賴了。
2、無論是 maven 還是其他的庫,都是通過同樣的操作,來引入的,只要把對應的 xml 片段(坐標)拷貝到pom.xml 文件中即可,就可以自動引入。

二、setting.xml 和pom.xml 配置

1、setting.xml

在這里插入圖片描述
setting.xml中,配置資源拉取遠程倉庫,提高下載速度。依次為:阿里云,華為云,官方云(2個)

<mirror><id>nexus-aliyun</id)<name>Nexus aliyun</name><url>http://maven.aliyun.com/nexus/content/groups/public</url>>	<mirrorOf>central</mirrOf>
</mirror><mirror><id>huaweicloud</id><mirrorOf>*</mirrorOf><url>https://repo.huaweicloud.com/repository/maven/</url>
</mirror><mirror><id>central</id><name>Maven Repository Switchboard</name><url>http://repo.maven.org/maven2/</url><mirrorOf>central</mirrorOf>
</mirror><mirror><id>central</id><name>Maven Repository Switchboard</name><url>http://repo2.maven.org/maven2/</url><mirrorOf>central</mirrorOf>
</mirror>

2、pom.xml

相關標簽及說明:
modelVersion: 指定了 POM 模型版本,默認是 “4.0.0”。

groupId: 項目的組織或團隊標識。

artifactId: 項目的唯一標識符,一個組織或團隊內是唯一的。

version: 項目的版本號。

packaging: 打包方式,通常是 "jar",部署tomcat,部署改為"war"

name: 項目的展示名。

description: 項目的描述。

properties: 自定義屬性。

dependencies: 項目依賴列表,

dependency:每個依賴可以包括 groupId, artifactId, version 等。

dependencyManagement: 用于管理項目依賴的版本,確保子項目之間的依賴版本一致。

build: 構建配置,包括插件配置、資源配置等。

reporting: 報告配置,用于配置如何生成項目報告。

repositories: 倉庫配置,用于指定項目構建時使用的遠程倉庫。

pluginRepositories: 插件倉庫配置,用于指定構建插件時使用的遠程倉庫。

<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>my-project</artifactId><version>1.0-SNAPSHOT</version><packaging>jar</packaging><name>My Project</name><description>A simple example project</description><properties><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target></properties><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency></dependencies><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.8.0</version><configuration><source>1.8</source><target>1.8</target></configuration></plugin></plugins></build>
</project>

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

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

相關文章

JavaScript中的原型和原型鏈

一、原型&#xff1a;每個函數都有prototype屬性&#xff0c;稱之為原型&#xff0c;這個屬性也是個對象所以也稱之為原型對象。 1.原型可以放一些屬性和方法&#xff0c;供實例對象使用。 <body><script>const arr new Array(1,3,5,7,6)document.getElementByI…

Go語言--延遲調用defer、獲取命令行參數、局部變量以及全局變量

延遲調用defer 關鍵字 defer 用于延遲一個函數或者方法(或者當前所創建的匿名函數)的執行。注意&#xff0c;defer語句只能出現在函數或方法的內部。 defer 語句經常被用于處理成對的操作&#xff0c;如打開、關閉、連接、斷開連接、加鎖、釋放鎖。通過defer 機制&#xff0…

NASA——quarius(水瓶座) L3 網格化 1 度年土壤濕度,第 5 版

Aquarius L3 Gridded 1-Degree Annual Soil Moisture V005 水瓶座 L3 網格化 1 度年土壤濕度&#xff0c;第 5 版 簡介 該數據集包含美國國家航空航天局&#xff08;NASA&#xff09;科學應用衛星&#xff08;SAC-D&#xff09;上的寶瓶座被動微波輻射計得出的第 3 級網格化…

SLAM 精度評估

SLAM 精度的評估有兩個最重要的指標&#xff0c;即絕對軌跡誤差&#xff08;ATE&#xff09;和相對位姿誤差&#xff08;RPE&#xff09;的 均方根誤差&#xff08;RMSE&#xff09;: 絕對軌跡誤差:直接計算相機位姿的真實值與 SLAM 系統的估計值之間的差值&#xff0c;首先將…

交換機基本原理

文章目錄 前言一、交換機的轉發行為二、交換機的轉發原理1.MAC地址表2.交換機初始狀態3.學習MAC地址4.ARP協議5.交換機轉發數據幀6.目標主機回復 三、華為交換機基本命令1.VRP視圖分層2.命令行補全3.命令行幫助4.配置設備名稱5.命令等級6.用戶界面7.配置console認證8.配置用戶界…

python-Django項目:圖書后臺管理系統

具體操作&#xff1a;請參考 Django項目&#xff1a;圖書后臺管理系統

基于深度學習的圖像補全

基于深度學習的圖像補全是一項利用深度學習技術來填補圖像中缺失區域的研究領域。這項技術可以有效地恢復損壞或不完整的圖像&#xff0c;使其變得完整和自然&#xff0c;廣泛應用于圖像修復、圖像編輯、視頻恢復和增強現實等領域。以下是關于這一領域的系統介紹&#xff1a; …

運維鍋總詳解計算機緩存

本文從OSI模型中的每一層緩存介紹、常見開源中間件緩存舉例、TCP/IP協議棧中的緩存機制、操作系統中的緩存、訪問緩存數據的時間范圍統計等方面對計算機中的緩存進行詳細介紹。希望對您有所幫助&#xff01; 一、OSI模型中的每一層緩存 1. 物理層&#xff08;Physical Layer&…

Unity--異步加載場景

Unity–異步加載場景 異步加載場景其實和異步加載資源是一樣的,只是加載的內容比較特殊而已. 也可以將場景視為特殊資源. 1.SceneManager.LoadScene 加載場景的方式,在Unity 中加載場景是通過SceneManager.LoadScene("場景名稱"); 來實現加載場景,這和UE4中的Open…

如何在Java中實現批量數據處理

如何在Java中實現批量數據處理 大家好&#xff0c;我是免費搭建查券返利機器人省錢賺傭金就用微賺淘客系統3.0的小編&#xff0c;也是冬天不穿秋褲&#xff0c;天冷也要風度的程序猿&#xff01; 1. 引言 在大數據時代&#xff0c;處理大量數據是許多應用程序中必不可少的需…

自動化立體倉庫出入庫能力及堆垛機節拍

導語 大家好&#xff0c;我是社長&#xff0c;老K。專注分享智能制造和智能倉儲物流等內容。 新書《智能物流系統構成與技術實踐》人俱樂部 完整版文件和更多學習資料&#xff0c;請球友到知識星球【智能倉儲物流技術研習社】自行下載 自動化立體倉庫的出入庫能力、堆垛機節拍以…

安全協議:SSL/TLS與Java實現

在當今的互聯網環境中&#xff0c;數據安全至關重要。SSL&#xff08;Secure Sockets Layer&#xff09;和其繼任者TLS&#xff08;Transport Layer Security&#xff09;是確保數據在網絡中安全傳輸的關鍵技術。本文將詳細介紹SSL/TLS協議的工作原理&#xff0c;并通過Java代碼…

掌握電路交換與分組交換:計算機網絡的核心技術

計算機網絡是現代信息社會的基石&#xff0c;而交換技術是實現網絡通信的核心。本文將詳細介紹兩種典型的交換方式&#xff1a;電路交換和分組交換&#xff0c;幫助基礎小白快速掌握這兩種技術的基本概念和區別。 什么是電路交換&#xff1f; 電路交換&#xff08;Circuit Swi…

Java中的服務化架構設計與實現

Java中的服務化架構設計與實現 大家好&#xff0c;我是免費搭建查券返利機器人省錢賺傭金就用微賺淘客系統3.0的小編&#xff0c;也是冬天不穿秋褲&#xff0c;天冷也要風度的程序猿&#xff01; 1. 引言 隨著軟件系統規模的不斷擴大和業務需求的增加&#xff0c;傳統的單體…

CentOS7開啟sshd失敗解決方法

Could not load host key: /etc/ssh/ssh_host_rsa_key Could not load host key: /etc/ssh/ssh_host_ecdsa_key Could not load host key: /etc/ssh/ssh_host_ed25519_key sshd: no hostkeys available – exiting. 1、檢查主機密鑰文件是否存在 ls -l /etc/ssh/ssh_host_*2、…

Centos系統遷移

目前&#xff0c;CentOS 全系列版本已經于l六月底正式停止維護&#xff0c;這意味著 CentOS 時代徹底終結&#xff0c;也意味著部署在 CentOS 7 上的業務系統將面臨前所未有的安全挑戰。 本文推薦由紅帽衍生出來的且可以做到真正無縫替代的linux版本Open Euler 注&#xff1a…

【前端】面試八股文——輸入URL到頁面展示的過程

【前端】面試八股文——輸入URL到頁面展示的過程 1. DNS解析 當用戶在瀏覽器中輸入URL并按下回車時&#xff0c;首先需要將域名轉換為IP地址&#xff0c;這個過程稱為DNS&#xff08;域名系統&#xff09;解析。具體步驟如下&#xff1a; 瀏覽器緩存&#xff1a;瀏覽器首先檢…

科普文:Linux服務器性能調優概敘

概敘 Java web應用性能分析之服務端慢和優化概敘_cpu飆高java-CSDN博客 Java web應用性能分析之【CPU飆升分析概述】_web頁面性能分析cpu占滿是因為死循環,還是循環過多-CSDN博客 在我們的軟件服務中&#xff0c;軟件部署的服務器&#xff0c;一般都是linux服務器&#xff0c…

ubuntu20.04安裝lio-sam

1、boost版本 boost版本查看&#xff1a;cat /usr/include/boost/version.hpp | grep "BOOST_LIB_VERSION" boost版本為1.78&#xff0c;為1.71時編譯報錯&#xff0c;報錯內容為&#xff1a; error: missing binary operator before token "(" 60 |…