maven--軟件項目管理工具(day01)

前提:----------------------------------------------------------------------------------------------------------------------------java

project : Maven
description : Maven是基於項目對象模型(POM),能夠經過一小段描述信息來管理項目的構建,報告和文檔的軟件項目管理工具。web

--------------------------------------------------------------------------------------------------------------------------------------
一,如何使用maven構建項目
1,下載和安裝maven
  MAVEN_HOME : "maven的安裝目錄"
  path : %MAVEN_HOME%\bin
2,新建一個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>apache

<groupId>cn.water.maven.hello</groupId>
<artifactId>hello-first</artifactId>
<version>SNAPSHOT-0.0.1</version>api

<dependencies>
  <dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.10</version>
    <scope>test</scope>
  </dependency>
</dependencies>tomcat

</project>
* 其中最重要的元素節點就是GAV--(groupId,artifactId,version)
項目座標
  groupId------------------用啦表示項目的名稱
  artifactId---------------用來表示項目的模塊,建議使用項目的名稱-模塊名稱 such as : crm-userGroup
  versionId----------------項目的版本號
3,創建相應的工程目錄,不過格式嚴格要求以下
pom.xml
src
  main
    java------------------------java源代碼
    resources-------------------源文件的資源目錄,(hibernate.cfg.xml,applicationContext.xml)
  test
    java------------------------工程的測試代碼
    resources-------------------測試工程所用到的資源目錄文件服務器

4,執行mvn compile 命令app

* 這個時候maven就會從中央倉庫中下載相應的jar包(保存到.m2的文件夾中),可是能夠設置本地的倉庫
* 設置下載到本地倉庫的本地目錄,打開settings.xml文件
找到<localRepository>D:/Java/maven</localRepository>裏面的內容能夠根據本身的想要防止的地方
可是這裏的文件要conf/文件下的setttingsmaven

5,archetype骨架式地構建本身的項目
  5.1 : 新建一個目錄放置咱們的工程:mkdir 03
  5.2 : 切換到剛剛新建的03目錄下,執行 mvn archetype:generate
  5.3 : 後面的根據提示來創建咱們的工程ide


二,正式進入maven的學習
1,maven整體上能夠分爲三個部門
* 依賴
* 倉庫
* 生命週期和插件工具

三,依賴
1,依賴包的查詢
* 全部的依賴都是經過座標來進行存儲的(GAV-->groupId,artifactId,version)
* 有一些網上的倉庫提供了查詢
* 什麼叫傳遞性依賴
依賴是會被傳遞的----------可是隻是做用於compile
若是咱們新建一個項目,這個項目主要是放置PO對象,可是使用到hibernate核心的jar包,
因此當咱們再新建一個項目的時候,須要依賴前面的一個項目,因此咱們要導入這個項目,可是與此同時,hibernate的jar包
也會相應的導入進來。

 

1,test 範圍指的是測試範圍有效的,在編譯和打包時都不會使用這個依賴 2,compile範圍指的是編譯範圍有效的,在編譯和打包時會將依賴存儲進去 3,provided依賴,在編譯和測試過程有效,最後生成war包時不會加入,諸如, serviet-api,由於servlet-api,tomcat等web服務器已經存在了,若是再打包回沖突 3,runtime在運行的時候依賴,在編譯的時候不會依賴。

相關文章
相關標籤/搜索