Maven使用介绍(二)
来源:互联网 发布:剑灵卡刀软件2017 编辑:程序博客网 时间:2024/06/05 08:19
POM &archetype
archetype就是一个project的模板,上面我们生成的project就是用默认的archetype生成的。如果使用不同的archetype,生成的project结构会有所不同。一个archetype指明了
- 1) 项目的目录结构以及什么目录是放source code,哪些是放test sourcecode,哪些目录是放resource的。
- 2)一个默认的pom.xml文件,这个默认的pom.xml文件中的groupId,artifactId,version用占位符表示,在创建project的时候通过参数传进来。
pom.xml文件的POM全称是Project ObjectModel,这个文件对于maven的使用者来说是一个和maven交互的渠道,pom.xml包含了一个mavenproject的配置,一个project该如何编译打包,project有哪些依赖项等等。
仔细看一下我们前面创建project的命令:mvn archetype:generateDarchetypeGroupId=org.apache.maven.archetypes-DgroupId=com.mycompany.app -DartifactId=myapp
- 1)archetype:generate,这是一个maven的plugin,用来从一个archetype创建一个project,关于plugin后面再说。
- 2)DarchetypeGroupId,这个就是指的archetype的groupid,也就是说是用的哪个archetype,或者说用哪个项目模板。
- 3)后面的两个参数,用来放大pom.xml文件里面,作为当前创建的project的描述信息。
Project创建好了,看如何去编译,直接进入的project的目录,在命令行下:
mvn compile
编译完后maven会创建一个target目录去保存编译结果。我们需要编译成一个什么样的内容,以及要输出到什么地方等等,都是可以在pom.xml文件里面配置的,但是因为我们目前并没有指定这些内容,所以maven会使用默认值。
我们还可以用maven执行test:
mvn test
第一次执行时,maven会去下载一些依赖项。另外要注意的时,如果我们更改了默认的目录结构,maven会因为找bu到test而无法去执行test。如果只需要编译test可以执行:
mvn test-compile
要把项目打包,执行:
mvn package
mvn会根据pom.xml里面的packaging选项打包成相应的文件。
repository &dependency
maven里面有一个repository的概念,当我们的项目依赖于某个jar时,maven会去repository里面去找。repository分两种,一种是远程的,一种是本地的。如果有几个project都用到junit,我们可以把junit放在repository里面,几个project可以公用,节约存储空间而且方便管理,这个repository的位置可以在pom.xml里面设置。
本地的默认的路径是安装用户的目录下的 .m2\repository文件夹。如果一个依赖项在本地的repository里面没有,那么maven会去他自己的远程的repository
也就是说,我们如果我们的project需要要引用一个依赖项,我们只需要在pom.xml文件中进行配置,maven会自动帮我们去引用。我们之前的创建project里面需要写单元测试,引用到了junit,看pom中的配置:
<</code>dependencies
>
<</code>dependency
>
<</code>groupId
>junit</</code>groupId
>
<</code>artifactId
>junit</</code>artifactId
>
<</code>version
>3.8.1</</code>version
>
<</code>scope
>test</</code>scope
>
</</code>dependency
>
</</code>dependencies
>
每一个需要为每一个 dependency指明groupId,artifactId,version。scope很简单,意思是说我们需要怎么引用,比如我们上面的例子里面设置的是test,意思是说只在test里面引用junit。但是我们如何知道groupId,artifactId和version呢? 比如我现在想引用log4j,这个几个值怎么填?可以去http://mirrors.ibiblio.org/maven2/
如果要把一个project安装到本地的repository里面,可以执行下面的命令:
mvn install
到这里就说完了创建,编译,测试,打包以及安装,大部分的项目也就是做这些事情。
- Maven使用介绍(二)
- Maven 介绍(二)
- Maven使用介绍(一)
- Maven使用介绍(三)
- Maven使用介绍(四)
- Maven(二)——使用Maven
- maven(二) 使用maven
- maven使用总结(二)
- Maven使用入门(二)
- Maven简单使用(二)
- Maven入门介绍二:Maven配置
- MPC使用介绍(二)
- gradle - 使用介绍(二)
- maven使用入门介绍
- Maven 使用介绍
- Maven 介绍、安装使用
- maven使用入门介绍
- Maven 使用介绍
- 背完这999句,英语口语绝不…
- 《Friends》里经典100句!好…
- Android中关于SQLite的操作
- Eclipse下的java工程目录
- Maven使用介绍(一)
- Maven使用介绍(二)
- Maven使用介绍(三)
- Maven使用介绍(四)
- Jquery基础之DOM操作
- SSH
- Java注释规范
- Java反射机制
- Java反射机制例子(一)
- @RequestMapping 用法…