Maven的系统性介绍
2013-11-22 22:42
204 查看
英文参考地址:http://maven.apache.org/what-is-maven.html
1.什么是Maven?
关于Maven的哲学可以参考Philosophy of Mavenhttp://maven.apache.org/background/philosophy-of-maven.html
关于Maven的历史可以参考History of Maven http://maven.apache.org/background/history-of-maven.html
关于Maven,只需要了解Maven的定义和用途就okay了。简单来说Maven是一个项目管理和综合工具,类似于Ant,但和Ant存在差别(具体差别,问一下google吧)。其是基于项目对象模型(Project
Object Model,POM),可以通过一小段描述信息来管理项目的构建(build)、报告(reporting)和文档。
Maven通过以下几个方面来达到更高效的管理的目的:屏蔽具体的细节来提供简单的构建过程、利用POM将构建项目统一化、提供项目的信息(例如代码控制的日志信息、依赖列表、单元测试相关信息等)、将项目开发的原则融入Maven来提供最佳的项目开发指导、透明化新特性的迁移。
目前,Maven的最新版本是Maven3.1.1,可以从此处http://maven.apache.org/download.cgi下载。
参考文档为:http://maven.apache.org/ref/3.1.1/
2.Maven的安装与配置
本文测试的环境为ubuntu系统下安装和配置,假定Java安装配置成功。
首先下载Maven的apache-maven-**(版本号)-bin.tar.gz包,我下载的包为apache-maven-3.1.1-bin.tar.gz,将其压缩到要安装的目录,假设目录为/usr/local/maven,压缩到该目录后为:/usr/local/maven/apache-maven-3.1.1。
环境变量的设置:
使用的命令为:$ export M2_HOME=/usr/local/maven/apache-maven-3.1.1
$ export M2=$M2_HOME/bin
$export MAVEN_OPTS="-Xms256m -Xmx512m“(其中该命令是可选的)
$export PATH=$PATH:$M2
测试安装成功与否的命令:$mvn --version
有以下类似的输出显示,根据具体安装环境有所不同。
3.Maven创建项目实例
3.1项目的创建
进入你要创建项目的目录,在终端下输入下面的命令:
$ mvn archetype:generate -DgroupId=com.Qunzer.app -DartifactId=airline-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false,其中DgroupId 和 DartifactId 是可以自己命名的,DarchetypeArtifactId是根据maven的archetype
plugin设置的,DinteractiveMode的默认值为true。第一次创建project的时候,由于Maven会下载常用的plugin,可能会花费很长的时间。该命令显示信息如下图所示:
该命令执行成功后,会在项目的目录中生成如下图所示结构的项目文件夹:
其中,pom.xml是项目的核心配置文件。
3.2 项目的构建
在该项目的文件中,使用命令$mvn package 来构建该项目。
该命令执行后,原来的项目文件夹会变成如下图所示的结构,相比于创建项目时,多了一个target目录。
可以使用下面的命令来测试target目录下jar包:
$java -cp target/airline-app-1.0-SNAPSHOT.jar com.Qunzer.app.App
该命令执行后,会输出 Hello World!
由于App.java的源程序如下图所示
1.什么是Maven?
关于Maven的哲学可以参考Philosophy of Mavenhttp://maven.apache.org/background/philosophy-of-maven.html
关于Maven的历史可以参考History of Maven http://maven.apache.org/background/history-of-maven.html
关于Maven,只需要了解Maven的定义和用途就okay了。简单来说Maven是一个项目管理和综合工具,类似于Ant,但和Ant存在差别(具体差别,问一下google吧)。其是基于项目对象模型(Project
Object Model,POM),可以通过一小段描述信息来管理项目的构建(build)、报告(reporting)和文档。
Maven通过以下几个方面来达到更高效的管理的目的:屏蔽具体的细节来提供简单的构建过程、利用POM将构建项目统一化、提供项目的信息(例如代码控制的日志信息、依赖列表、单元测试相关信息等)、将项目开发的原则融入Maven来提供最佳的项目开发指导、透明化新特性的迁移。
目前,Maven的最新版本是Maven3.1.1,可以从此处http://maven.apache.org/download.cgi下载。
参考文档为:http://maven.apache.org/ref/3.1.1/
2.Maven的安装与配置
本文测试的环境为ubuntu系统下安装和配置,假定Java安装配置成功。
首先下载Maven的apache-maven-**(版本号)-bin.tar.gz包,我下载的包为apache-maven-3.1.1-bin.tar.gz,将其压缩到要安装的目录,假设目录为/usr/local/maven,压缩到该目录后为:/usr/local/maven/apache-maven-3.1.1。
环境变量的设置:
使用的命令为:$ export M2_HOME=/usr/local/maven/apache-maven-3.1.1
$ export M2=$M2_HOME/bin
$export MAVEN_OPTS="-Xms256m -Xmx512m“(其中该命令是可选的)
$export PATH=$PATH:$M2
测试安装成功与否的命令:$mvn --version
有以下类似的输出显示,根据具体安装环境有所不同。
3.Maven创建项目实例
3.1项目的创建
进入你要创建项目的目录,在终端下输入下面的命令:
$ mvn archetype:generate -DgroupId=com.Qunzer.app -DartifactId=airline-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false,其中DgroupId 和 DartifactId 是可以自己命名的,DarchetypeArtifactId是根据maven的archetype
plugin设置的,DinteractiveMode的默认值为true。第一次创建project的时候,由于Maven会下载常用的plugin,可能会花费很长的时间。该命令显示信息如下图所示:
该命令执行成功后,会在项目的目录中生成如下图所示结构的项目文件夹:
其中,pom.xml是项目的核心配置文件。
3.2 项目的构建
在该项目的文件中,使用命令$mvn package 来构建该项目。
该命令执行后,原来的项目文件夹会变成如下图所示的结构,相比于创建项目时,多了一个target目录。
可以使用下面的命令来测试target目录下jar包:
$java -cp target/airline-app-1.0-SNAPSHOT.jar com.Qunzer.app.App
该命令执行后,会输出 Hello World!
由于App.java的源程序如下图所示
相关文章推荐
- Maven学习笔记
- 《Maven权威指南》学习笔记四_创建一个简单的Maven项目
- 《Maven权威指南》学习笔记十七_一个多模块项目 3ff0
- 《Maven权威指南》学习笔记十八_多模块企业级项目 3ff0
- 《Maven权威指南》学习笔记二十_关于POM
- 近日maven学习概况
- Eclipse Maven Tomcat的利用配置
- (转)Vaadin 使用 Maven
- Maven和Eclipse联合开发
- Maven intall OR Maven build
- 使用Maven开发Android的常见问题
- maven flexmojos 插件安装配置
- Maven依赖
- Maven的生命周期
- SNAPSHOT or RELEASE
- maven实现依赖的“全局排除”
- Spring AOP schema找不到报错
- myeclipse中maven3的使用,部署web项目到tomcat7
- Maven的使用,Nexus建立本地仓库以及Eclipse导入Maven项目(一): 准备篇