最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Maven?自動化構建的實現(xiàn)示例

 更新時間:2024年05月13日 09:19:20   作者:程序猿進階  
本文主要介紹了Maven?自動化構建的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

一、Maven:是一款服務于 Java平臺的自動化構建工具

【1】Maven可以將一個項目按模塊劃分成不同的工程,利于分工協(xié)作;
【2】Maven可以將 jar包保存在自己的中央“倉庫”中進行統(tǒng)一管理,有需要使用的工程引用這個文件接口即可,不需要真的將 ja包復制過來(解決同樣的 jar包文件重復出現(xiàn)在不同的項目工程中,一方面浪費存儲空間,另外也讓工程比較臃腫);
【3】可以自動導入依賴的相關jar包,之前需要自己手動導入相關 jar包;
【4】Tip:如下表示運行時環(huán)境,主要存儲 String等類似對象,其實只是一組 jar包的引用;

在這里插入圖片描述

二、安裝 Maven:配置環(huán)境變量即可

【1】創(chuàng)建 MAVNE_HOME環(huán)境變量

在這里插入圖片描述

【2】在 path 中添加 Maven 的 bin 目錄:驗證(mvn -v)命令查看 maven 版本

在這里插入圖片描述

三、自定義Maven倉庫

修改解壓目錄下的conf/setting.xml文件:

在這里插入圖片描述

四、命令

【1】maven compile:編譯main文件,生成class文件位于 target 目錄中。
【2】maven package:對主程序進行打包,生成文件在 target 目錄中。
【3】maven clean:清理 target 目錄下文件。
POM:project object model 項目對象模型。對于 Maven 工程是核心配置文件,與構建過程相關的一切設置都是在這個文件中進行設置。

五、坐標:使用下面三個向量在倉庫中唯一定位一個Maven工程

【1】groupid: 公司或組織域名倒序+項目名
【2】artifactid: 模塊名稱Hello
【3】version: 版本

<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.0.0.RELEASE</version>

【定位的文件】:org/springframework/spring-core/4.0.0.RELEASE/spring-core-4.0.0.RELEASE.jar

六、 倉庫的分類

【1】本地倉庫:當前電腦上部署的倉庫目錄,為當前電腦上所有的Maven工程服務。
【2】遠程倉庫:①、私 服:搭建在當前局域網(wǎng)下,為當前局域網(wǎng)網(wǎng)范圍內的所有Maven工程服務。②、中央倉庫:架設在Internet上,為全世界所有Maven工程服務。③、中央倉庫的鏡像:為了分擔中央倉庫的壓力,提升用戶訪問的速度。

七、依賴:Maven解析依賴信息時,會到本地倉庫中找被依賴的jar包。

對于我們開發(fā)的工程需要使用 install 命令安裝后就可以進入倉庫,生成 jar 包等文件。

<dependency>
    <groupId>com.shidaiyintong</groupId>
    <artifactId>Hello</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <scope>compile</scope>
</dependency> 

依賴具有傳遞性: 當父類依賴了 jar 包后,子類 Maven Dependencies 也會自動添加,但非 compile 范圍的 jar 包不能傳遞。
依賴的排除性:使用 exlutions 標簽

<exclusions>
    <exclution>
          <groupId>xxxx</groupId>
          <artifactId>xxx</artifactId>
    </exclution>
</exclutions>    
<exclusions>
    <exclution>
          <groupId>xxxx</groupId>
          <artifactId>xxx</artifactId>
    </exclution>
</exclutions>

依賴的原則: 解決 jar 包沖突問題,就近原則。相同路徑取先聲明者優(yōu)先,指 dependency標簽的聲明順序。

依賴的范圍:

【1】compile: 對主程序、測試程序可見,主程序參與打包、測試程序不參與打包
【2】test: 對主程序無效,對測試程序有效,不參與打包

在這里插入圖片描述

【3】provided: 主要用于開發(fā),測試有效。不參與打包(不部署),防止沖突(特別是一些服務器的jar包)。 點擊并拖拽以移動?點擊并拖拽以移動?

在這里插入圖片描述

八、生命周期

清理、編譯、測試、報告、打包、安裝、部署、運行。
特性: 當執(zhí)行某一階段時,都是從第一階段開始執(zhí)行。

九、利用 MyEclipse 中使用 Maven

【1】使用內置 Maven 但是需要設置如下(不建議使用自帶的 Maven 程序,不穩(wěn)定。使用我們自己解壓的文件)

Window—>Preferences—>Maven4MyEclise—>Installations—>Add

在這里插入圖片描述

【2】設置 User Settings: 指定 conf/settings.xml 的位置,進而獲取本地倉庫的位置,如下:

在這里插入圖片描述

【3】修改每次創(chuàng)建 Maven 項目后,JDK的版本,需要在 settings.xml 文件中 標簽內添加如下:

<profile>
    <id>jdk-1.8</id>
    <activation>
        <activeByDefault>true</activeByDefault>
        <jdk>1.8</jdk>
    </activation>
    <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
    </properties>
</profile>

【4】Maven 中執(zhí)行命令的方式:pom.xml—>右鍵—>Maven build…—>Golas(compile)等。

【5】Maven 創(chuàng)建一個 Web 工程: 創(chuàng)建的時候 packing:war 包,創(chuàng)建完后,會發(fā)現(xiàn)與我們平常的 web 工程不太一樣,缺少web.xml等文件。添加方式如下:選中工程右鍵進入 properties 屬性—> Project Facets 去掉 Dynamic Web Model再勾上Dynamic Web Model,會出現(xiàn)超鏈接如下:

在這里插入圖片描述

【6】在 Content directory 中輸入要存放標準Web工程生成的文件的目錄

在這里插入圖片描述

【7】最終目錄如下:

在這里插入圖片描述

【8】Maven工程導入Existing Maven Project 沒有 cope 功能,因此要將Maven工程放入 workspace 目錄中,進行導入。在Maven工程中主要通過 pom.xml 文件進行識別。普通Java文件導入時,有 cope 功能,也能夠導入 Maven 工程,但必須是Eclipse 工程,工程中含有 .clsspath/.project 文件為Eclipse工程。

【9】自定義版本標簽: 方便版本升級等問題的解決,凡是需要聲明后統(tǒng)一使用的場合都可以使用, 使用的時候只需要在 中輸入 ${atguigu.spring.version} 即可

<properties>
   <atguigu.spring.verion>4.0.0.RELEASE</atguigu.spring.version>
</peoperties>

十、繼承

對依賴范圍: test、provide 的同一 jar 包的版本的管理。

解決思想: 將此 jar包統(tǒng)一提取到“父”工程中,在子工程中聲明此 jar包依賴時不指定版本號,以父工程中統(tǒng)一設定的為準,同時也便于修改。

操作步驟:
【1】創(chuàng)建一個 Maven 工程作為父工程,打包方式為 pom
【2】在子工程中聲明對父工程的引用
【3】將子工程中坐標與父工程坐標相同的內容刪掉
【4】在父工程中統(tǒng)一 jar包依賴
【5】在自工程中刪除jar包依賴的版本號

子類找干爹配置:

<parent>
   <!--父元素的pom地址-->
   <relativePath>../Parent/pom.xml</relativePath><!--相對地址-->
</parent>

父類統(tǒng)一管理配置: 配置集成后,執(zhí)行安裝命令 install 時,要先安裝 parent,按順序 install,解決辦法,聚合即可。

 <dependencyManagement>
     <dependencies>
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit<artifactId>
             <version>4.0</version>
             <scope>test</scope>
         </dependency>
     <dependencies>
 </dependencyManagement>

十一、聚合:一鍵安裝各個模塊工程

【1】配置方式: 在一個工程中配置,例如 parent 工程中:直接install parent項目就安裝了全部工程,會自動檢測順序。
【2】查找 jar包的 pom文件: http://mvnrepository.com

<modules>
	<module>../Hello</module>
	<module>../HelloFriend</module>
</modules>

到此這篇關于Maven 自動化構建的實現(xiàn)示例的文章就介紹到這了,更多相關Maven 自動化構建內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • idea中無法自動裝配未找到 ‘XXXXXXX‘ 類型的 Bean

    idea中無法自動裝配未找到 ‘XXXXXXX‘ 類型的 Bean

    本文主要介紹了idea中無法自動裝配未找到 ‘XXXXXXX‘ 類型的 Bean的原因及三種解決方法,具有一定的參考價值,感興趣的可以了解一下
    2024-03-03
  • Spring依賴注入的兩種方式(根據(jù)實例詳解)

    Spring依賴注入的兩種方式(根據(jù)實例詳解)

    這篇文章主要介紹了Spring依賴注入的兩種方式(根據(jù)實例詳解),非常具有實用價值,需要的朋友可以參考下
    2017-05-05
  • Jdk1.8 HashMap實現(xiàn)原理詳細介紹

    Jdk1.8 HashMap實現(xiàn)原理詳細介紹

    這篇文章主要介紹了Jdk1.8 HashMap實現(xiàn)原理詳細介紹的相關資料,需要的朋友可以參考下
    2016-12-12
  • Java排序算法中的冒泡排序算法實現(xiàn)

    Java排序算法中的冒泡排序算法實現(xiàn)

    這篇文章主要介紹了Java排序算法中的冒泡排序算法實現(xiàn),冒泡排序只會操作相鄰的兩個數(shù)據(jù),每次冒泡操作都會對相鄰的兩個元素進行比較,看是否滿足大小關系要求,如果不滿足就讓它倆互換,需要的朋友可以參考下
    2023-12-12
  • 實例總結Java多線程編程的方法

    實例總結Java多線程編程的方法

    在本篇文章里我們給大家總結了Java多線程編程的方法以及相關實例代碼,需要的朋友們可以學習下。
    2018-10-10
  • 分析mybatis運行原理

    分析mybatis運行原理

    Mybatis是一個優(yōu)秀的持久層框架,它對JDBC操作數(shù)據(jù)庫的過程進行封裝,使開發(fā)者只需要關注sql本身。我們原來使用JDBC操作數(shù)據(jù)庫,需要手動的寫代碼去注冊驅動、獲取connection、獲取statement等等,現(xiàn)在Mybaits幫助我們把這些事情做了,我們只需要關注我們的業(yè)務sql即可
    2021-06-06
  • 使用Java將一個List運用遞歸轉成樹形結構案例

    使用Java將一個List運用遞歸轉成樹形結構案例

    這篇文章主要介紹了使用Java將一個List運用遞歸轉成樹形結構案例,本文通過詳細的案例來解釋說明了如何去操作,需要的朋友可以參考下
    2021-06-06
  • springBoot中myBatisPlus的使用步驟及示例代碼

    springBoot中myBatisPlus的使用步驟及示例代碼

    MyBatis-Plus 是一個 MyBatis 的增強工具,在 Spring Boot 項目里使用它能極大提升開發(fā)效率,下面為你詳細介紹在 Spring Boot 中使用 MyBatis-Plus 的步驟以及示例代碼,感興趣的朋友一起看看吧
    2025-03-03
  • MyBatis?Generator使用小結

    MyBatis?Generator使用小結

    本文主要介紹了MyBatis?Generator使用小結,它能夠根據(jù)數(shù)據(jù)庫表,自動生成java實體類、dao層接口及mapper.xml文件,具有一定的參考價值,感興趣的可以了解一下
    2023-11-11
  • MyBatis-Plus 邏輯刪除的實現(xiàn)示例

    MyBatis-Plus 邏輯刪除的實現(xiàn)示例

    邏輯刪除通過標記字段實現(xiàn)數(shù)據(jù)“假刪除”,既保障了數(shù)據(jù)安全,又簡化了恢復操作,是核心業(yè)務數(shù)據(jù)的最佳刪除方案,下面就來介紹一下MyBatis-Plus邏輯刪除的實現(xiàn),感興趣的可以了解一下
    2026-01-01

最新評論

浏阳市| 澜沧| 桐柏县| 县级市| 页游| 七台河市| 华容县| 平泉县| 江阴市| 山东省| 武冈市| 宁阳县| 吉水县| 闵行区| 开原市| 孟连| 太康县| 贵溪市| 南城县| 邳州市| 华宁县| 宜兴市| 耒阳市| 仁怀市| 舞钢市| 翼城县| 黄陵县| 瓦房店市| 大厂| 汤阴县| 会东县| 成安县| 泌阳县| 陆丰市| 琼中| 内乡县| 祁东县| 汕头市| 南开区| 余干县| 阜宁县|