Maven簡介
Maven是一個項目管理和綜合工具。Maven提供了開發人員構建一個完整的生命周期框架。開發團隊可以自動完成項目的基礎工具建設,Maven使用標准的目錄結構和默認構建生命周期。
在多個開發團隊環境時,Maven可以設置按標准在非常短的時間里完成配置工作。由於大部分項目的設置都很簡單,並且可重復使用,Maven讓開發人員的工作更輕松,同時創建報表,檢查,構建和測試自動化設置。
Maven提供了開發人員的方式來管理:
·Builds
·Documentation
·Reporting
·Dependencies
·SCMs
·Releases
·Distribution
·mailing list
概括地說,Maven簡化和標准化項目建設過程。處理編譯,分配,文檔,團隊協作和其他任務的無縫連接。Maven增加可重用性並負責建立相關的任務。
官網
http://maven.apache.org/download.cgi
環境配置
或者
M2_HOME
C:\apache-maven
Path
%M2_HOME%\bin
maven 最全源配置
http://repo1.maven.org/maven2/
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
<mirror>
<id>ui</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://uk.maven.org/maven2/</url>
</mirror>
<mirror>
<id>jboss-public-repository-group</id>
<mirrorOf>central</mirrorOf>
<name>JBoss Public Repository Group</name>
<url>http://repository.jboss.org/nexus/content/groups/public</url>
</mirror>
<mirror>
<id>repo2</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo2.maven.org/maven2/</url>
</mirror>
<mirror>
<id>OSChina</id>
<name>OSChina Central</name>
<url>http://maven.oschina.net/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
<mirror>
<id>nexus-osc-thirdparty</id>
<mirrorOf>thirdparty</mirrorOf>
<name>Nexus osc thirdparty</name>
<url>http://maven.oschina.net/content/repositories/thirdparty/</url>
</mirror>
本地創庫搭建
寫成自己本地的倉庫地址
<localRepository>D:\Maven-Repository</localRepository>
<!-- localRepository
| The path to the local repository maven will use to store artifacts.
|
| Default: ${user.home}/.m2/repository
<localRepository>/path/to/local/repo</localRepository>
-->
更新基礎環境
mvn help:system
maven 命令操作
1. mvn archetype:generate
2. mvn compile
3. mvn package
錯誤信息匯總
Q:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:
A:
1. mvn clean package -Dmaven.test.skip=true
2.<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20.1</version>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>