1. 顯示一個插件所有的goal
  2. 創(chuàng)建一個基于模版的項目,eclipse項目
    ?//創(chuàng)建標(biāo)準(zhǔn)目錄模板
    ?mvn archetype:create -DgroupId=com.codeline.commons -DartifactId=codelineCommons?
    //創(chuàng)建web項目
    ?mvn archetype:create -DgroupId=com.mycompany.app??? -DartifactId=my-webapp?????? -DarchetypeArtifactId=maven-archetype-web
  3. 查看一個插件所用的版本
    mvn -Dplugin=groupId:artifactId help:describe
  4. 忽略編譯test
    mvn -Dmaven.test.skip=true
  5. 一個jar文件,它是maven的一個插件,怎么安裝到本地庫。
    ?? mvn install:install-file
    ?????? -Dfile=<path-to-file>
    ??? -DgroupId=<group-id>
    ??? -DartifactId=<artifact-id>
    ??? -Dversion=<version>
    ??? -Dpackaging=<packaging>
    ??? -DgeneratePom=true
  6. maven的生命周期
    ??? validate,驗證工程是否正確,所有需要的資源是否可用。
    ??? compile,編譯項目的源代碼。
    ??? test-compile,編譯項目測試代碼。
    ??? test,使用已編譯的測試代碼,測試已編譯的源代碼。
    ??? package,已發(fā)布的格式,如jar,將已編譯的源代碼打包。
    ??? integration-test,在集成測試可以運(yùn)行的環(huán)境中處理和發(fā)布包。
    ??? verify,運(yùn)行任何檢查,驗證包是否有效且達(dá)到質(zhì)量標(biāo)準(zhǔn)。
    ??? install,把包安裝在本地的repository中,可以被其他工程作為依賴來使用
    ?? deploy,在整合或者發(fā)布環(huán)境下執(zhí)行,將最終版本的包拷貝到遠(yuǎn)程的repository,使得其他的開發(fā)者或者工程可以共享。 ?
    ?? generate-sources,產(chǎn)生應(yīng)用需要的任何額外的源代碼,如xdoclet。
  7. Dependency Scope
    ?compile,缺省值,適用于所有階段,會隨著項目一起發(fā)布。
    ?provided,類似compile,期望JDK、容器或使用者會提供這個依賴。如servlet.jar。
    ?runtime,只在運(yùn)行時使用,如JDBC驅(qū)動,適用運(yùn)行和測試階段。
    ?test,只在測試時使用,用于編譯和運(yùn)行測試代碼。不會隨項目發(fā)布。
    ?system,類似provided,需要顯式提供包含依賴的jar,Maven不會在Repository中查找它
    ?eg:
    ?<dependency>
    ??? <groupId>hibernate</groupId>
    ??? <artifactId>hibernate</artifactId>
    ??? <version>3.0.3</version>
    ??? <scope>test</scope>
    ?</dependency>