Maven 2 pom.xml

pom,项目对象模型,是maven最核心的东西。所谓项目对象模型,那他到底是个什么模型呢?我的理解就是,可以把项目看成一个对象,通过pom组织起来并加以管理应用。所以,pom的最重要作用,也是maven的最主要作用是管理这些依赖关系。


先看下pom文件的基本结构。

     < modelVersion >4.0.0</ modelVersion >
     < groupId >com.mycompany.app</ groupId >
     < artifactId >my-app</ artifactId >
     < version >1.1.0.1</ version >
     < packaging >jar</ packaging >
     < name >myapp</ name >
     < url >http://maven.apache.org</ url >
     < properties >
         < project.build.sourceEncoding >UTF-8</ project.build.sourceEncoding >
     </ properties >
     < dependencies >
         < dependency >
             < groupId >junit</ groupId >
             < artifactId >junit</ artifactId >
             < version >3.8.1</ version >
             < scope >test</ scope >
         </ dependency >
     </ dependencies >
</ project >

上图中分为项目基本信息和项目构建信息两个部分


项目基本信息:

    <modelVersion>4.0.0</modelVersion>

     <!--路径名称-->

     < groupId >com.mycompany.app</ groupId >
     <!--项目名称-->
     < artifactId >my-app</ artifactId >
     <!--版本信息-->
     < version >1.1.0.1</ version >
     <!--打包生成文件类型-->
     < packaging >jar</ packaging >
     < name >myapp</ name >
     < url >http://maven.apache.org</ url >


Properties信息:用来覆盖项目默认的信息。

    <properties>

         < project.build.sourceEncoding >UTF-8</ project.build.sourceEncoding >
     </ properties >


Dependencies信息:项目依赖的jar包。

    <dependencies>

         < dependency >
             < groupId >junit</ groupId >
             < artifactId >junit</ artifactId >
             < version >3.8.1</ version >
             < scope >test</ scope >
         </ dependency >
     </ dependencies >



repositories: 去那里下载jar包,可以在 其中定义本地仓库。


pluginrepositories:



项目构建信息:

build::定义项目默认结构。可以通过更改其中结构,对已有的非maven项目进行maven化重建。


reporting:生成站点信息


profile: 用户自定义的一些属性

mvn install -PprofileId




父pom位置

其实项目真正起作用的pom不止是上面定义的pom文件,每个工程都会有一个父pom,子pom与父pom一起构造出真正的pom文件-effective pom

可以通过命令mvn help:effective-pom来查看有效pom文件。

父pom位置:%MAVEN_HOME%\lib\maven-model-builder-3.3.9.jar\org\apache\maven\model\pom-4.0.0.xml。



那父pom里面都有什么有用的东西呢?

1. 规定pluin的插件版本

2. java工程目录结构。






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值