maven學習和使用

maven整理

maven整理從如下內容整理:apache

  1. maven中的聚合
  2. 繼承
  3. 依賴範圍

1.maven中的聚合

一次構建多個項目。每一個項目又包含多個模塊。好比:咱們的項目分爲:支付項目、商城項目和系統項目。而每個項目又分多個模塊 聚合從哪裏提及呢?從如下幾點提及:eclipse

  • 1.1 如何建立聚合模塊
  • 1.2 如何使用聚合模塊
  • 1.3在eclipse中建立聚合模塊

1.1 如何建立聚合模塊

<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/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>com.huaying</groupId>
	<artifactId>huaying-parent</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>pom</packaging>

	<name>huaying-parent</name>
	<url>http://maven.apache.org</url>

	......
</project>

必定要注意 packaging 爲 pommaven

1.2 如何使用聚合模塊

使用有多重形式:其實就是爲了方便構建項目和多個模塊。 以下代碼:ide

<!-- 配置  模塊 組件  START -->
	<modules>
		<!-- <module>../huaying-common</module>
		<module>../mall-common</module> -->
		<!-- <module>../pay-common</module> -->

		<!-- <module>../pay-yafubao</module>
    	<module>../sys-parent</module> -->
    	<!-- <module>../mall-parent</module> -->
  	</modules>
  	<!-- END 配置  模塊 組件  END -->

聚合模塊能夠分爲兩類目錄結構:工具

  1. 父子目錄結構 父子目錄結構的代碼配置爲:
<modules>
		<!-- <module>huaying-common</module>
		<module>mall-common</module> -->
		<!-- <module>pay-common</module> -->
		<!-- <module>pay-yafubao</module>
    	<module>sys-parent</module> -->
    	<!-- <module>mall-parent</module> -->
  	</modules>
  1. 平行目錄結構 平行目錄結構的代碼配置爲:
<modules>
		<!-- <module>../huaying-common</module>
		<module>../mall-common</module> -->
		<!-- <module>../pay-common</module> -->

		<!-- <module>../pay-yafubao</module>
    	<module>../sys-parent</module> -->
    	<!-- <module>../mall-parent</module> -->
  	</modules>

1.3在IDEA中建立聚合模塊

省略ui

2.繼承

使用繼承去消除pom中的重複引用。url

<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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.huaying</groupId>
    <artifactId>huaying-parent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <relativePath>../huaying-parent/pom.xml</relativePath>
  </parent>
  <groupId>com.huaying</groupId>
  <artifactId>mall-parent</artifactId>
  <name>mall-parent</name>
  <url>http://maven.apache.org</url>
  <packaging>pom</packaging>
 	......
</project>

2.1 使用pom中必定要注意 relativePath

relativePath 配置項必定要排查清楚否則會報錯的呀code

2.2 關注可繼承的pom配置元素

  • groupId
  • version
  • url
  • description
  • inceptionYear
  • developers
  • contributors
  • issueManagement
  • ciManagement
  • scm
  • mailingLists
  • properties
  • dependencyManagement
  • distributionManagement
  • build
  • repositories
  • pluginRepositories

3.依賴範圍

共有以下5種依賴範圍:xml

  1. compile
  2. test
  3. provider
  4. runtime
  5. system 掌握好依賴關聯管理基本maven就能夠上路了。

4. 一些小技巧和工具

使用以下命令能夠分析依賴關係、僅僅是分析。運行時的依賴管理很難排查的只有在項目中才能得到。繼承

  1. mvn dependency:list
  2. mvn dependency:tree

5. 參考書籍

maven實戰 許曉斌。很是推薦maven小白閱讀電子書或者紙質書籍。

相關文章
相關標籤/搜索