項目管理工具:Maven使用方法總結


一、概念

  Maven是一個項目管理和構建自動化工具。Maven提供了開發人員構建一個完整的生命周期框架,開發團隊可以自動完成項目的基礎工具建設。一個Maven項目的結果如下圖所示:

  

二、Maven安裝

  在安裝maven之前,先保證安裝了JDK,然后在Apache的官網上http://maven.apache.org/download.cgi下載最新版本的Binary zip archive包。

  下載完解壓放在本地的某個路徑下,然后配置maven環境變量:

  新建變量名M2_HOME

  變量值:C:\Program Files\apache-maven-3.3.9

  在PATH里加入maven的bin的路徑:

  

  配置完成后,在windows命令提示符下,輸入mvn -version,如果顯示下圖則表示安裝成功:

  

  在Eclipse 4.0以上版本,繼承了Maven的插件,可以在Window -> Preference -> Maven進行一些配置:

  

  

三、常用命令

mvn archetype:create 創建Maven項目
mvn compile 編譯源代碼
mvn deploy 發布項目
mvn test-compile 編譯測試源代碼
mvn test 運行應用程序中的單元測試
mvn site 生成項目相關信息的網站
mvn clean 清除項目目錄中的生成結果
mvn package 根據項目生成的jar
mvn install 在本地Repository中安裝jar
mvn eclipse:eclipse 生成eclipse項目文件
mvn jetty:run 啟動jetty服務
mvn tomcat:run 啟動tomcat服務
mvn clean package -Dmaven.test.skip=true:清除以前的包后重新打包,跳過測試類

四、生命周期

  Maven的生命周期是為了對所有的構建過程進行了抽象,便於統一。

  1、clean 清理項目

  pre-clean 執行清理前的工作

  clean 清理上一次構建生成的所有文件

  post-clean 執行清理后的文件

  2、Default 構建項目

  compile 編譯項目中的源代碼

  test 使用合適的單元測試框架進行測試,這些測試代碼不會被打包或部署

  test-compile 將需要測試的源代碼編譯到路徑,一般是編譯src/test/java目錄下的java文件至目標輸出的測試classpath目錄中

  package 接受編譯好的代碼,打包成可發布的格式,如JAR

  install 將包安裝到本地倉庫,給其他本地引用提供依賴

  3、site 生成項目站點

  pre-site 在生成項目站點前要完成的工作

  site 生成項目的站點文檔

  post-site 在生成項目站點后要完成的工作

  site-deploy 發布生成的站點到服務器上

五、第一個Maven項目

  在Eclipse中新建一個Maven項目:

  

  

  Finish后項目的結果是:

  

  Eclipse構建web項目時,與上面大體相同,需要注意是選擇ArcheType的時候選擇maven-archetype-webapp。

  pom文件為:

<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.xj.webdemo</groupId>
  <artifactId>webdemo</artifactId>
  <packaging>war</packaging>
  <version>0.0.1-SNAPSHOT</version>
  <name>webdemo Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.10</version>
      <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.0.1</version>
        <scope>provided</scope>
    </dependency>
  </dependencies>
  <build>
    <finalName>webdemo</finalName>
    <plugins>
        <plugin>
            <groupId>org.apache.tomcat.maven</groupId>
            <artifactId>tomcat7-maven-plugin</artifactId>
            <version>2.2</version>
            <executions>
                <execution>
                    <phase>
                        package
                    </phase>
                    <goals>
                        <goal>run</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
  </build>
</project>
View Code

  然后運行,就可以在瀏覽器輸入localhost:8080,就可以訪問了。

六、POM文件

  一個項目所有的配置都放置在pom文件中:定義項目的類型、名字、管理依賴關系,定制插件的行為等等。

<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.xj.maven</groupId>
  <artifactId>hello</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>
  <name>hello</name>
  <url>http://maven.apache.org</url>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.10</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>

  在pom文件中

 <groupId></groupId>
  <artifactId></artifactId>
  <version></version>

  叫做坐標,它能唯一的確定一個項目,有了maven坐標,我們就可以用它來指定我們的項目所依賴的其他項目,插件,或者父項目。

七、Maven庫

  當第一次運行maven命令時,你需要Internet連接,因為它要從網上下載一些文件,maven默認的遠程庫是http://repo1.maven.org/maven2,這個遠程庫有maven的核心插件和可供下載的jar文件。

  但不是所有的jar文件都可以從遠程庫下載,比如我們自己開發的項目,這個時候可以在內部定制庫,也可以手動下載和安裝所需的jar文件到本地庫。

  本地庫是指 maven 下載了插件或者 jar 文件后存放在本地機器上的拷貝。在 Linux 上,它的位置在 ~/.m2/repository,在 Windows XP 上,在 C:\Documents and Settings\username\.m2\repository ,在 Windows 7 上,在 C:\Users\username\.m2\repository。當 maven 查找需要的 jar 文件時,它會先在本地庫中尋找,只有在找不到的情況下,才會去遠程庫中找。

  運行下面的命令能把我們的 helloworld 項目安裝到本地庫:

     $mvn install

八、參考資料

  1、http://www.oracle.com/technetwork/cn/community/java/apache-maven-getting-started-2-405568-zhs.html

  2、http://mvnrepository.com/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM