美文网首页
Maven 学习笔记

Maven 学习笔记

作者: WuCh1k1n | 来源:发表于2019-04-05 00:57 被阅读0次

    项目约定配置

    Maven 遵循约定优于配置的原则,下表是 Maven 提倡的标准目录结构:

    目录 目的
    $(basedir) 存放 pom.xml 和所有的子目录
    $(basedir)/src/main/java 项目的 Java 源代码
    $(basedir)/src/main/resources 项目的资源,例如 property 文件,springmvc.xml
    $(basedir)/src/test/java 项目的测试类,例如 Junit 代码
    $(basedir)/src/test/resources 测试用的资源
    $(basedir)/src/main/webapp/WEB-INF web 项目的信息,比如存放 web.xml 、本地图片、jsp试图页面
    $(basedir)/target 打包输出目录
    $(basedir)/target/test-classes 测试编译输出目录
    Test.java Maven 只会自动运行符合该命名规则的测试类
    ~/.m2/repository Maven 默认的本地仓库目录位置

    Maven 环境配置

    Maven 是一个基于 Java 的工具,Maven 3.3 要求 JDK 1.7 或以上,Maven 3.2 要求 JDK 1.6 或以上,Maven 3.0/3.1 要求 JDK 1.5 或以上。
    Maven 安装步骤:

    1. 安装 Java,并配置环境变量
    2. 安装 Maven
    # wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
    # tar -xvf  apache-maven-3.3.9-bin.tar.gz
    # sudo mv -f apache-maven-3.3.9 /usr/local/
    
    1. 配置环境变量
    # sudo vim /etc/profile
    ...
    export MAVEN_HOME=/usr/local/apache-maven-3.3.9
    export PATH=${PATH}:${MAVEN_HOME}/bin
    
    1. 查看 Maven 版本信息
    # mvn -v
    

    Maven POM

    pom.xml 文件用于描述项目如何构建,声明项目依赖,项目版本与开发者等信息。
    pom.xml 文件必须包含 project 根标签和 groupId, artifactId, version 等子标签。

    节点 描述
    project 工程的根标签
    modelVersion 模型版本需要设置为 4.0
    groupId 公司或组织的标识,通常在一个组织或项目中是唯一的
    artifactId 工程的标识,通常是工程的名字
    version 工程的版本号
    parent 父项目,当项目中没有规定某个元素的值,默认使用父项目对应值
    packaging 项目产生的构件类型,例如jar、war、ear、pom
    dependencies 项目引入插件所需要的额外依赖
    modules 模块/子项目,被构建成项目的一部分
    properties 项目属性,可在 POM 文件其他位置被引用
    build 构建项目需要的信息
    reporting 该元素包括使用报表插件产生报表的规范

    POM 详细语法参考:http://maven.apache.org/pom.html

    Maven 构建生命周期

    一个典型的 Maven 构建生命周期如下图所示:


    Maven构建生命周期.png
    阶段 描述
    验证 validate 验证项目是否正确且所有必须信息是可用的
    编译 compile 源代码编译
    测试 test 单元测试
    打包 package 创建 JAR/WAR包
    检查 verify 对集成测试的结果进行检查
    安装 install 安装打包的项目到本地仓库
    部署 deploy 拷贝最终的工程包到远程仓库中

    Maven 仓库

    项目中所依赖的第三方库的存放位置,称为 Maven 仓库。Maven仓库有三种类型:

    • 本地 本机上的 Maven 仓库,路径为~/.m2/respository/
    • 中央 Maven 社区提供的仓库,其中包含了大量常用的库
    • 远程 开发人员自己定制仓库,配置在 POM 文件中的 repository 标签
      优先级:本地仓库 > 中央仓库 > 远程仓库

    Maven 常用命令

    1. 创建普通 Java 项目
    mvn archetype:create \
        -DgroupId=packageName \
        -DartifactId=projectName
    
    1. 创建 Web 项目
    mvn archetype:create \
        -DgroupId=packageName \
        -DartifactId=webappName \
        -DarchetypeArtifactId=maven-archetype-webapp
    
    1. 反向生产 Maven 项目的骨架
    mvn archetype:generate
    
    1. 编译源代码
    mvn test
    
    1. 编译测试代码
    mvn test-compile
    
    1. 运行测试
    mvn test
    
    1. 产生 site
    mvn site
    
    1. 打包
    mvn package
    
    1. 在本地仓库中安装 jar
    mvn install <jar path> <destination path>
    
    1. 清除项目
    mvn clean
    

    详细的 Maven 命令可以通过 mvn --help 查看

    相关文章

      网友评论

          本文标题:Maven 学习笔记

          本文链接:https://www.haomeiwen.com/subject/fdbciqtx.html