项目管理工具maven

来源:互联网 发布:淘宝搜索排行 编辑:程序博客网 时间:2024/05/17 17:45

1,安装  
2,maven what why how
Maven基于pom(项目对象模型)的项目管理工具。Maven的核心坐标
Groupid:定义当前maven项目属于的项目。
Artifactid:定义实际项目中的一个模块。
Version:定义当前项目的当前版本
packaging:定义该项目的打包方式
因为可以处理依赖关系方便,便捷的项目创建,依赖管理,项目信息描述。
创建一个maven项目即可。
原理:基于Apache提供的依赖jar包仓库,以及约定目录结构实现。
3,依赖的配置和maven的生命周期
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.9</version>
<scope>test</scope>
</dependency>
</dependencies>


4,聚合和继承
聚合是为了快速的创建项目,继承减少代码的重复性,其实没减少。
一,聚合配置代码:


<modules>
  <module>../day33_01_permission</module>
  <module>../day33_02_hr</module>
</modules>


其中module的路径为相对路径。




二,继承配置代码:


<parent>  
    <groupId>cn.crxy.oa</groupId>
  <artifactId>Project</artifactId>
  <version>0.0.1-SNAPSHOT</version>
    <relativePath>../Project/pom.xml</relativePath>  
</parent>


三,继承代码过程中,可以定义属性


<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <junit.version>4.9</junit.version>
    <maven.version>0.0.1-SNAPSHOT</maven.version>
</properties>


访问属性的方式为${junit.version},例如:
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>




四,将父模块中将用dependencyManagement进行管理


<dependencyManagement>
    <dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
    <groupId>cn.crxy.oa</groupId>
    <artifactId>permission</artifactId>
    <version>${hello.project.version}</version>
    <type>jar</type>
    <scope>compile</scope>
  </dependency>
   
     </dependencies>
  </dependencyManagement>


这样的好处是子模块可以有选择行的继承,而不需要全部继承。
0 0