目前项目管理基本上都采用的是Maven的方式,目录结构清晰,第三方包的引入直接在pom.xml 中直接引入网络下载,团队合作的时候方便引入第三方包的冲突,今天来演示下maven项目的构建!
1. 准备工作
Jdk 1.5以上java开发环境: http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html
Eclipse IDE 一个。
Maven 3.0.3下载地址: http://maven.apache.org/docs/3.0.3/release-notes.html
2. 配置Maven 环境
2.1 将下载的maven 包解压,我的是解压到:
我的电脑-----属性----高级-----环境变量-----环境变量-----新建
变量名:MAVEN_HOME
变量值:D:\MyMaven\apache-maven-3.3.9
找到 path
在环境变量值尾部加入: ;%MAVEN_HOME%\bin; ---前面注意分号
2.2 设置maven 环境变量
2.2.1 设置maven home
2.2.2 设置 将maven home 设置到 path 中
2.2.3 检查是否成功设置了
2.3 修改仓库的位置
修改我们仓库地址,仓库用于存放我们项目所依赖的所有jar包。
我的仓库路径:D:\MyMaven\repository ----这个路径是我自己创建,你可以将路径创建在任何位置。
我们打开…\apache-maven-3.0.3\conf\目录下的setting.xml文件,设置成我们创建的仓库路径
3.创建maven 项目
通过maven命令创建一个maven项目
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app
-DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
过了好半天,卡在 这(也有的会一下过去的);这句话的命令是创建一个默认的项目,但我在执行这个命令时,命令行会停在
[INFO] Generating project in Batch mode
增加一个-X参数,可以查看详细信息
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false -X
可以看到,程序停在了下面这一行。
[DEBUG] Searching for remote catalog: http://repo1.maven.org/maven2/archetype-catalog.xml
去查询这个文件的时候网络比较差或者其他原因,导致挂在那里。
解决方法很简单。
1. 把上述地址复制到浏览器中,下载这个文件到本地。
2. 把文件archetype-catalog.xml复制到目录.m2\repository\org\apache\maven\archetype\archetype-catalog\2.2下面。
3. 在上述命令后增加参数-DarchetypeCatalog=local,变成读取本地文件即可。
然后在运行上面的命令,就会成功的,目录下多了个文件如下:
这样,一个maven项目就创建成功了!
4. 相关说明
Ø project:pom.xml文件中的顶层元素;
Ø modelVersion:指明POM使用的对象模型的版本。这个值很少改动。
Ø groupId:指明创建项目的组织或者小组的唯一标识。GroupId是项目的关键标识,典型的,此标识以组织的完全限定名来定义。比如,org.apache.maven.plugins是所有Maven插件项目指定的groupId。
Ø artifactId:指明此项目产生的主要产品的基本名称。项目的主要产品通常为一个JAR文件。第二,象源代码包通常使用artifactId作为最后名称的一部分。典型的产品名称使用这个格式: <artifactId>- <version>. <extension>(比如:myapp-1.0.jar)。
Ø version:项目产品的版本号。Maven帮助你管理版本,可以经常看到SNAPSHOT这个版本,表明项目处于开发阶段。
Ø name:项目的显示名称,通常用于maven产生的文档中。
Ø url:指定项目站点,通常用于maven产生的文档中。
Ø description:描述此项目,通常用于maven产生的文档中。
5. 编译项目代码
我们的项目已经创建完成。但我们点开目录发现,它并不是我们eclipse所需要的项目目录格式。我们需要把它构建成我们eclipse可以导入的项目。
在命令提示符下进入到我们的创建的项目目录(D:\MyMaven\my-app)下,执行:mvn clean compile
clean 命令告诉maven 清理目录 target ,complie 告诉maven 编译项目生成编译代码;
项目是编译完了,但项目的目录结构还不是我们想要的eclipse的项目结构,是不能导入到eclipse中的。所以,还需要执行一个命令:mvn eclipse:eclipse
命令执行完成后就得我们需要的项目目录了。
6. 导入到eclipse 工具
6.1 打开eclipse 工具,配置maven,
6.2 导入项目到工具
SUCCESS !!!!!!!!
7. 使用工具创建maven 项目(重点)
直接上图,不啰嗦!
创建完成后,项目会报错,不要紧张,这时候我们切换到视图project explorer 下
这样,maven项目就创建OK了!
8. maven 相关命令
mvn archetype:generate 固定格式
-DgroupId 组织标识(包名)
-DartifactId 项目名称
-DarchetypeArtifactId 指定ArchetypeId,maven-archetype-quickstart,创建一个Java Project;maven-archetype-webapp,创建一个Web Project
-DinteractiveMode 是否使用交互模式
2)编译源代码
mvn compile
3)编译测试代码
mvn test-compile
4)清空
mvn clean
5)运行测试
mvn test
6)生产站点目录并打包
mvn site-deploy
7)安装当前工程的输出文件到本地仓库
mvn install
8)打包
mvn package
9)先清除再打包
mvn clean package
10)打成jar包
mvn jar:jar
11)生成eclipse项目
mvn eclipse:eclipse
12)查看帮助信息
mvn help:help
13)查看maven有哪些项目类型分类
mvn archetype:generate -DarchetypeCatalog=intrenal