1. 程式人生 > >Maven的pom.xml檔案結構之基本配置dependencies和dependencyManagement

Maven的pom.xml檔案結構之基本配置dependencies和dependencyManagement

1.Maven專案的dependencies

Maven專案的構建往往要依賴於第三方的類庫。通過<dependencies>可以給出Maven專案所依賴的第三方類庫,示例如下:

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.0</version>
      <type>jar</type>
      <scope>test</scope>
      <optional>true</optional>
    </dependency>
    ...
  </dependencies>
說明:
  • 對於一個依賴<dependency>,首先要給出被依賴的Maven構件(被依賴的只能是Maven構件)的具體標識資訊,如groupId、artifactId和version(可以是一個範圍)。為了進一步區分Maven構件的內容(如source、bin和doc),往往還會給出Maven構件的classifier。
  • type,打包型別,預設jar
  • scope,被依賴的Maven構件在classpath中的可訪問範圍
    • compile,預設值,被依賴的Maven構件在compile、runtime和test的時候都可以在classpath中找到
    • provided,被依賴的Maven構件在compile和test的時候都可以在classpath中找到,在runtime的時候由JDK或容器提供
    • system,被依賴的Maven構件在compile和test的時候都可以在classpath中找到,在runtime的時候必須顯式將JAR加入到classpath中
    • runtime,被依賴的Maven構件在runtime和test的時候都可以在classpath中找到,在compile時不是必須的
    • test,被依賴的Maven構件在test的時候可以在classpath中找到,在compile和runtime時不是必須的
  • systemPath,只有當<scope>system</scope>時才設定,否則構建時會報錯。該值必須是一個絕對路徑,可以通過環境變數給出具體的絕對路徑
  • optional,當前Maven專案的構件被其他專案依賴,此處被依賴的Maven構件相對於其他專案來說是不必須的
  • exclusions,將一個被依賴的Maven構件中的部分類庫,從classpath中去掉

2.Maven專案的dependencyManagement
<dependencyManagement>主要用於存在父子繼承的Maven專案中。在父專案中通過<dependencyManagement>設定被依賴的Maven構件,在子專案中設定被依賴的Maven構件時,只要給出構件的groupId和artifactId,而version則預設引用父專案的設定。

相關推薦

Maven的pom.xml檔案結構基本配置dependenciesdependencyManagement

1.Maven專案的dependencies Maven專案的構建往往要依賴於第三方的類庫。通過<dependencies>可以給出Maven專案所依賴的第三方類庫,示例如下: <dependencies> <dependency&

Maven的pom.xml檔案結構基本配置properties

在Maven的pom.xml檔案中,<properties>用於定義全域性變數,在POM中通過${property_name}的形式引用變數的值。 POM中的全域性變數可以分為如下5種類型

Maven的pom.xml文件結構基本配置packaging多模塊聚合結構(微服務)

second maven項目 支持 其中 jar maven 所有 了解 ack 1. packaging packaging給出了項目的打包類型,即作為項目的發布形式,其可能的類型。在Maven 3中,其可用的打包類型如下: jar,默認類型 war ejb ear r

Maven的pom.xml文件結構基本配置parent繼承結構[轉]

mon AI wrap ace neu port lai net 文件 1.Maven項目的繼承 Maven項目之間不僅存在多模塊的聚合關系,而且Maven項目之間還可以存在相互繼承的關系。 Maven項目之間的繼承關系通過<parent>表示,在子

Maven的pom.xml檔案結構Build配置build

在Maven的pom.xml檔案中,Build相關配置包含兩個部分,一個是<build>,另一個是<reporting>,這裡我們只介紹<build>。 1. 在Maven的pom.xml檔案中,存在如下兩種<build>:

Maven的pom.xml檔案結構Build配置

在Maven的pom.xml檔案中,Build相關配置包含兩個部分,一個是<build>,另一個是<reporting>,這裡我們只介紹<build>。 1. 在Maven的pom.xml檔案中,存在如下兩種<build>:

SpringSecurity學習筆記二:SpringSecurity結構基本配置

Spring Security3.2分為11個模組,如下表所示: Spring Security3.2引入了新的Java配置方案,完全不在需要通過XML來配置安全性功能。如下,展現了Spring Security最簡單的Java配置: @EnableWebSecurity

Tomcat 目錄結構以及基本配置

路勁 運行 system 工作 tom 地址 class文件 我們 webapps   1 Tomcat 目錄層次結構    ① bin:存放啟動和關閉tomcat 的腳本文件② conf: 存放配置文件 server.xml:該文件用於配置和ser

SpringBoot配置檔案,eureka的基本配置

spring.profiles.active=local # ----------------------------------Service Base-----------------------------------------------------------

資料結構基本查詢與樹表查詢(上)

只要你開啟電腦,就會涉及到查詢技術。如炒股軟體中查股票資訊、硬碟檔案中找照片、在光碟中搜DVD,甚至玩遊戲時在記憶體中查詢攻擊力、魅力值等資料修改用來作弊等,都要涉及到查詢。當然,在網際網路上查詢資訊就更加是家常便飯。查詢是計算機應用中最常用的操作之一,也是許多程

XML檔案約束DTD技術

一、思維導圖 二、學習過程 需求:xml文件用來描述資料,當你想要要求約束你的團隊按照你的資料含義的格式來寫xml文件怎麼做?所以產生了DTD技術。基本語法:語法規則見思維導圖,它的規則是從根節點開始描述,描述根節點有幾個子節點,子節點裡面應該包括些什麼,包含的內容型別是什麼。 入門案例

Maven的pom.xml檔案結構詳解

Maven的pom.xml檔案簡稱POM (Project Object Model),是Maven專案的配置和管理核心。 pom.xml檔案包含大量配置資訊,這些資訊大致可以分為4類。 1.POM的模型版本 <modelVersion>4.0.0</m

Eclipse設定XML檔案的自動格式化配置

在Eclipse下編輯XML檔案時可以像Java檔案一樣進行格式化。 不過,預設的格式化設定效果不太理想,尤其是標籤屬性較多時。 通過以下設定可以達到一個相對理想的效果: Window -> Preferences -> XML -> Editor -> Formatting : 設定

Eclipse中設定XML檔案的自動格式化配置

設定XML檔案的自動格式化配置:      在Eclipse下編輯XML檔案時可以像Java檔案一樣進行格式化。不過,預設的格式化設定效果不太理想,尤其是標籤屬性較多時。 通過以下設定可以達到一個相對理想的效果: Window -> Preferences ->

jvm探祕五:Class類檔案結構屬性表

概述 在Class檔案、欄位表和方法表都可以攜帶自己的屬性資訊,這個資訊用屬性表進行描述,用於描述某些場景專有的資訊。 與Class檔案中其它資料項對長度、順序、格式的嚴格要求不同,屬性表集合不要求其中包含的屬性表具有嚴格的順序,並且只要屬性的名稱不與已

testng.xml檔案結構組成及節點屬性說明

testng.xml檔案結構: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">

瞭解npm的檔案結構(npm-folders)配置檔案(npm-mrc)

一、npm的檔案結構   npm的安裝:     本地安裝 1. 將安裝包放在 ./node_modules 下(執行 npm 命令時所在的目錄),如果沒有 node_modules 目錄,會在當前執行 npm 命令的目錄下生成 node_modules 目錄。 2. 可以通過 require() 來引

Class類檔案結構ConstantValue屬性

程式設計過程中經常用的static,final關鍵字,也經常聽到同事談起這些詞,到底他們怎麼樣呢,jvm中class類檔案結構可以找到答案。 ConstantValue屬性 ConstantValue屬性的作用是通知虛擬機器自動為靜態變數賦值,只有被stat

Apache Camel 中camel配置檔案引入其他xml檔案介紹--將camel配置檔案拆分後並引用

1、rest 可以在新檔案中用<restContext/>標籤 例如:需要匯入的檔案myCoolRests.xml,內容為 <restContext id="myCoolRest" xmlns="http://camel.apache.org/schema

XML檔案約束DTD詳解以及xml檔案的dtd描述檔案本地化

1.XML檔案約束與DTD的簡單介紹 我們編寫文件來約束一個XML文件的書寫規範,這稱之為XML約束。 常用的約束技術有: XML DTDXML Schema DTD的基本概念: document type definition 文件型別定義 DTD檔案一