maven學習筆記

             Maven, 是基於項目對象模型(Project Object Model, POM),通過一小段描述信息來管理項目的構建,報告,文檔的軟件項目管理工具。

目前,絕大多數開發人員都把 Ant 當作 Java 編程項目的標準構建工具。但是,Ant 的項目管理工具(作爲 make的替代工具)不能滿足絕大多數開發人員的需要。通過檢查 Ant 構建文件,很難發現項目的相關性信息和其它元信息(如開發人員/擁有者、版本或站點主頁)。
        

        Maven 除了以程序構建能力爲特色之外,還提供 Ant 所缺少的高級項目管理工具。由於 Maven 的缺省構建規則有較高的可重用性,所以常常用兩三行 Maven 構建腳本就可以構建簡單的項目,而使用 Ant 則需要十幾行。事實上,由於 Maven 的面向項目的方法,許多 Apache Jakarta 項目現在使用 Maven,而且公司項目採用 Maven 的比例在持續增長。

        Maven這個單詞來自於意第緒語,意爲知識的積累,最早在Jakata Turbine項目中它開始被用來試圖簡化構建過程。當時有很多項目,它們的Ant build文件僅有細微的差別,而JAR文件都由CVS來維護。於是Maven創始者開始了Maven這個項目,該項目的清晰定義包括,一種很方便的發佈項目信息的方式,以及一種在多個項目中共享JAR的方式。

        下面就安裝maven開進行測試:

一,安裝軟件

    這裏推薦一個下載軟件的地方就是http://download.chinaunix.net/download/0014000/13186.shtml   可以找到你想要的軟件包。

    [root@tomcat ~]# wget http://down1.chinaunix.net/distfiles/apache-maven-3.0.4-bin.tar.gz

    [root@tomcat ~]# tar -zxf   apache-maven-3.0.4-bin.tar.gz

    [root@tomcat ~]# vim /etc/profile

        export MAVEN_HOME=/usr/local/maven

        export PATH=$PATH:$MAVEN_HOME/bin

    [root@tomcat ~]#source  /etc/profile

驗證是否成功:

    [root@tomcat ~]#  maven -v

二,maven常用命令

Maven庫:    http://repo2.maven.org/maven2/

1. 創建Maven的普通java項目:
   mvn archetype:create
   -DgroupId=packageName
   -DartifactId=projectName  
2. 創建Maven的Web項目:   
    mvn archetype:create
    -DgroupId=packageName    
    -DartifactId=webappName
    -DarchetypeArtifactId=maven-archetype-webapp    
3. 編譯源代碼: mvn compile
4. 編譯測試代碼:mvn test-compile    
5. 運行測試:mvn test   
6. 產生site:mvn site   
7. 打包:mvn package   
8. 在本地Repository中安裝jar:mvn install
9. 清除產生的項目:mvn clean   
10. 生成eclipse項目:mvn eclipse:eclipse  
11. 生成idea項目:mvn idea:idea  
12. 組合使用goal命令,如只打包不測試:mvn -Dtest package   
13. 編譯測試的內容:mvn test-compile  
14. 只打jar包: mvn jar:jar  
15. 只測試而不編譯,也不測試編譯:mvn test -skipping compile -skipping test-compile
      ( -skipping 的靈活運用,當然也可以用於其他組合命令)  
16. 清除eclipse的一些系統設置:mvn eclipse:clean 
        一般使用情況是這樣,首先通過cvs或svn下載代碼到本機,然後執行mvn eclipse:eclipse生成ecllipse項目文件,然後導入到eclipse就行了;修改代碼後執行mvn compile或mvn test檢驗,也可以下載eclipse的maven插件。

mvn -version/-v  顯示版本信息
mvn archetype:generate        創建mvn項目
mvn archetype:create -DgroupId=com.oreilly -DartifactId=my-app   創建mvn項目

mvn package            生成target目錄,編譯、測試代碼,生成測試報告,生成jar/war文件
mvn jetty:run            運行項目於jetty上,
mvn compile                    編譯
mvn test                    編譯並測試
mvn clean                    清空生成的文件
mvn site                    生成項目相關信息的網站
mvn -Dwtpversion=1.0 eclipse:eclipse        生成Wtp插件的Web項目
mvn -Dwtpversion=1.0 eclipse:clean        清除Eclipse項目的配置信息(Web項目)
mvn eclipse:eclipse                將項目轉化爲Eclipse項目

在應用程序用使用多個存儲庫
<repositories>    
    <repository>      
        <id>Ibiblio</id>      
        <name>Ibiblio</name>      
        <url>http://www.ibiblio.org/maven/</url>    
    </repository>    
    <repository>      
        <id>PlanetMirror</id>      
        <name>Planet Mirror</name>      
        <url>http://public.planetmirror.com/pub/maven/</url>    
    </repository>  
</repositories>


mvn deploy:deploy-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar -DrepositoryId=maven-repository-inner -Durl=ftp://xxxxxxx/opt/maven/repository/


發佈第三方Jar到本地庫中:

mvn install:install-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar


-DdownloadSources=true

-DdownloadJavadocs=true

mvn -e            顯示詳細錯誤 信息.

mvn validate        驗證工程是否正確,所有需要的資源是否可用。
mvn test-compile    編譯項目測試代碼。 。
mvn integration-test     在集成測試可以運行的環境中處理和發佈包。
mvn verify        運行任何檢查,驗證包是否有效且達到質量標準。     
mvn generate-sources    產生應用需要的任何額外的源代碼,如xdoclet。

本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/lifxue/archive/2009/10/14/4662902.aspx

常用命令:
mvn -v 顯示版本
mvn help:describe -Dplugin=help 使用 help 插件的  describe 目標來輸出 Maven Help 插件的信息。
mvn help:describe -Dplugin=help -Dfull 使用Help 插件輸出完整的帶有參數的目標列
mvn help:describe -Dplugin=compiler -Dmojo=compile -Dfull 獲取單個目標的信息,設置  mojo 參數和  plugin 參數。此命令列出了Compiler 插件的compile 目標的所有信息
mvn help:describe -Dplugin=exec -Dfull 列出所有 Maven Exec 插件可用的目標
mvn help:effective-pom 看這個“有效的 (effective)”POM,它暴露了 Maven的默認設置

mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch03 -DartifactId=simple -DpackageName=org.sonatype.mavenbook 創建Maven的普通java項目,在命令行使用Maven Archetype 插件
mvn exec:java -Dexec.mainClass=org.sonatype.mavenbook.weather.Main Exec 插件讓我們能夠在不往 classpath 載入適當的依賴的情況下,運行這個程序
mvn dependency:resolve 打印出已解決依賴的列表
mvn dependency:tree 打印整個依賴樹

mvn install -X 想要查看完整的依賴蹤跡,包含那些因爲衝突或者其它原因而被拒絕引入的構件,打開 Maven 的調試標記運行
mvn install -Dmaven.test.skip=true 給任何目標添加maven.test.skip 屬性就能跳過測試
mvn install assembly:assembly 構建裝配Maven Assembly 插件是一個用來創建你應用程序特有分發包的插件

mvn jetty:run 調用 Jetty 插件的 Run 目標在 Jetty Servlet 容器中啓動 web 應用
mvn compile 編譯你的項目
mvn clean install 刪除再編譯

mvn hibernate3:hbm2ddl 使用 Hibernate3 插件構造數據庫

    

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章