当前位置: 首页 > 图灵资讯 > 技术篇> Maven使用笔记

Maven使用笔记

来源:图灵教育
时间:2023-05-16 09:25:43

Maven一.什么是Maven?  Maven是跨平台项目管理工具。依靠管理和项目信息管理,主要服务于基于Java平台的项目建设。二.Maven工程的架构  src    main      java放置您的源码      resources放置您的配置文件    test      java放置您的测试代码      resources放置您的测试配置文件    这个目录中出现了target构建后的一切。    pom.xmlMaven工程核心配置文件3。第一个项目4.以下两个值设置在Eclipse配置Maven环境设置环境中的instalations中,您的maven环境设置Userd 在setting中,设置当地仓库配置文件settingseting.xml,更新5.基于Myeclipse创建新的Maven项目,创建Maven项目,选择quick-start,输入GAV,完成Maven项目的创建。6.依靠Maven项目运行所需的jar包(资源)通过当地仓库获取,当地仓库信息通过中央仓库获取,项目依靠相应的jar包运行。7.依赖范围

Scope对应不同的依赖范围,比如test只能服务于测试阶段,其他阶段无效。8.依靠传输three,依靠twotwo,依靠onethree间接依赖one

九、可选依赖性(修改被依赖方是否向依赖放提供jar包)<optional>true</optional>在一个项目中,可选依赖开关设置多个配置,筛选依赖包10。排除依赖(修改依赖方是否使用依赖放提供jar包)

<exclusions>    <exclusion>      所包含坐标1    </exclusion>     <exclusion>      所包含坐标2    </exclusion>  </exclusions>

消除从依赖包中传递的依赖关系

十一.依赖冲突  不同项目的转移依赖以最接近依赖关系为准  多个依赖版本配置在同一项目中,以最终配置为准。仓库类型  本地仓库    D盘:本地仓库  远程仓库    互联网上      中央仓库:      私服:本地仓库和中央仓库之间存放在局域网中的仓库13。生命周期  三个生命周期,每个生命周期包含几个小的生命周期  clean  default  site14.使用插件

<build>  <plugins>    <plugin>      <groupId>org.apache.maven.plugins</groupId>      <artifactId>maven-source-plugin</artifactId>      <version>2.2.1</version>      <executions>        <execution>          <goals>            <goal>jar-no-fork</goal>          </goals>          <phase>verify</phase>        </execution>      </executions>    </plugin>  </plugins></build>

15.为了消除重复,我们提取了许多相同的配置,并将父亲的项目设置为被继承

<packaging>pom</packaging>   继承父工程在子工程中增加   <!-- 描述继承 声明继承的父亲项目的坐标,以及相应的指定位置-->   <parent>     <groupId>…</groupId>     <artifactId>… </artifactId>     <version>… </version>     <relativePath>../父工程项目名</relativePath>   </parent>

父工程统一管理子工程依赖版本

父工程声明依赖于管理版本,子工程只需声明使用的坐标GA,不需要设置版本,父工程提供统一的管理版本

<properties>  <junit.version>4.9</junit.version>  ……</properties>

引用使用${junit.version}

十六.聚合

<modules>  <module>../子项目名称1</module>  <module>../子项目名称2</module>  <module>../子项目名称3</module></modules>

聚合与继承的关系

聚合主要是为了快速建设项目继承,主要是为了消除重复

//===========================================================

pom.简单的xml模板文件:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="https://www.tulingxueyuan.cn/d/file/p/20230516/czes5edrszs" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">  <!-- 版本:4.0.0 -->  <modelVersion>4.0.0</modelVersion>  <!-- 版本:4.0.0 -->  <modelVersion>4.0.0</modelVersion>  <!-- 组织名称:临时使用 组织名称+项目名称 作为组织名称 -->  <!-- 组织名称:实际名称 根据访问路径规范设置,通常以功能为名称:eg: junit spring -->  <groupId>cn.itcast.maven</groupId>  <!-- 项目名称 -->  <artifactId>HelloWorld</artifactId>  <!-- 当前项目版本号:多个版本可以在同一项目开发过程中发布,此处标注0.0.1版 -->  <!-- 当前项目版本号:每个项目发布后,可以发布多个版本,依赖时可以转移不同的版本,使用不同的版本号 -->  <version>0.0.1</version>  <!-- 名称:可省略 -->  <name>Hello</name>    <!-- 依赖关系 -->    <dependencies>        <!-- 依赖设置 -->        <dependency>            <!-- 依赖组织名称 -->            <groupId>junit</groupId>            <!-- 依赖项目名称 -->            <artifactId>junit</artifactId>            <!-- 依赖版本名称 -->            <version>4.9</version>            <!-- 依赖范围:test包下的依赖设置 -->            <scope>test</scope>        </dependency>            </dependencies></project>

执行maven命令jar包...

a)打开cmd命令行,进入Hello项目根目录(包括pomm).xml文件目录)b)执行 mvn 实施compile命令后,生成了maven工程编译完成后字节码文件的生成目录targetc)cmd 继续输入mvn 执行完clean命令后,删除d字节码生成目录cmd 中录入 mvn test命令执行后,编译字节码和测试执行过程日志和详细报告e在字节码生成目录中生成)cmd 中录入 mvn clean compile命令组合指令,首先执行clean,然后执行compile,通常在上线前执行,清除试验f)cmd 中录入 mvn clean test命令组合指令,首先执行clean,然后执行test,通常用于测试g)cmd 中录入 mvn clean package命令组合指令,先执行clean,再执行package,包装项目,通常用于发布前的执行过程:清洁-清空环境编译-编译源代码测试-测试源代码包装-编译非测试包装h)cmd 中录入 mvn clean install 查看仓库,当前项目已发布到仓库组合指令,先执行clean,再执行install,将项目打包,它通常用于发布前的执行过程:清洁-清空环境编译-编译源代码测试-测试源代码包装-编译非测试包装部署-将包装发布到资源仓库