2.环境变量 JAVA_HOME M2_HOME
Path %M2_HOME%/bin
检验是否安装成功 mvn help :system
Maven核心不是做实际的事情,只是解析一些XML文档当,管理生命周期和插件
Maven强大来自于它的插件,这些插件可以变异源代码,打包二进制代码,发布站点等。
第一次使用用全新的Maven运行诸如mvn install 命令时,Maven会自动从远程资源库下载大部分核心Maven插件
1.创建、构建简单的项目
创建项目时使用Maven的archetype插件,
http://maven.apache.org/plugins/index.html
Maven的archetype插件包含如下goal
archetype:create :已过时的goal
archetype:generate 使用指定原型创建一个Maven项目
archetype:crate-from-project 使用已有的项目创建Maven项目
archetype:crawl :从仓库中搜索原型
创建命令
mvn archetype:generate -DinteractiveMode=false -DgroupId=org.fkjava -DartifactId=mavenQs -Dpackafe=org.fkjava.mavenqs
mavenQs
——pom.xml![]()
——src
——main
——java
——org
——fkjava
——mavenqs
——test——App.java![]()
——java
——org
——fkjava
——mavenqs
——AppTest.java![]()
App.java是archetype插件生成的一个简单的Java类,AppTest作为该插件为APP生成的测试用例
pom.xml包含了该项目的版本、groupId、artifactId等坐标信息,未指定任何编译Java程序、打包、运行Java程序的详细指令。
由于Maven项目一的pom.xml都有一个上级 pom.xml,可以进行编译
mvn compile
mvn exec:java -Dexec.mainClass="org.fkjava.mavenqs.App"
输出:Hello World!
2.MyEclipse搭建Maven
Maven约定
Maven生命周期源代码 :${basedir}/src/main/java下资源文件:${basedir}/src/main/resources下测试代码:${basedir}/src/test下编译生成的class文件:${basedir}/target/classes下项目应该会产生一个JAR文件,并将生成的JAR:${basedir}/target下:
——clean生命周期
-pre-clean 在构建之前执行预清理-clean 执行清理-postclean 最后清理
——default生命周期——site生命周期
-pre-site:生成站点之前做验证-site:生成站点-post-site:生成站点之后做验证-site-deploy:发布站点到远程服务器
默认的生命周期则包含了项目构建的核心部分,默认的生命周期包含如下核心阶段
——compile:编译项目——test:单元测试——package:项目打包——install:安装到本地仓库——deploy:部署到远程仓库