zoukankan      html  css  js  c++  java
  • JavaEE高级-Maven学习笔记

    Maven简介

      1、Maven是一款服务于Java平台的自动化构建工具。

      2、构建:

        - 概念:以“Java源文件”、“框架配置文件”、“JSP”、“HTML”、“图片”等资源为“原料”,去“生产”一个可以运行的项目的的过程

        - 编译:Java源文件【User.java】->编译->Class字节码文件【User.class】->交给JVM去执行

        - 部署:一个BS项目最终运行的并不是动态Web工程本身,而是这个动态Web工程的“编译结果”

      3、构建过程中的各个环节

        - 清理:将以前编译得到的旧的class字节码文件删除,为下一次编译做准备

        - 编译:将Java源程序编译成class字节码文件

        - 测试:自动测试,自动调用junit程序

        - 报告:测试程序执行的结果

        - 打包:动态Web工程打war包,Java工程打jar包

        - 安装:Maven特定的概念,将打包得到的文件复制到“仓库”中的指定位置

        - 部署:将动态Web工程生成的war包复制到Servlet容器的指定目录下,使其可以运行

      4、自动化构建

    安装Maven核心程序

      1、检查JAVA_HOME环境变量

      2、解压Maven核心程序的压缩包,放在一个非中文无空格路径下

      3、配置Maven相关的环境变量

        M2_HOME

        path

      4、运行mvn -v 命令查看Maven版本

    Maven的核心概念

      1、约定的目录结构

      2、POM

      3、坐标

      4、依赖

      5、仓库

      6、生命周期/插件/目标

      7、继承

      8、聚合

    第一个Maven工程

      1、创建约定的目录结构

        根目录:工程名

        src目录:源码

        pom.xml文件:Maven工程的核心配置文件

        main目录:存放主程序

        test目录:存放测试程序

        java目录:存放Java源文件

        resources目录:存放框架或其他工具的配置文件

    常用Maven命令

      注:执行与构建过程相关的Maven命令,必须进入pom.xml所在的目录

      常用命令:

        mvn clean:清理

        mvn compile:编译主程序

        mvn test-compile:编译测试程序

        mvn test:执行测试

        mvn package:打包

        mvn install:安装

        mvn site:生成站点

    POM

      1、含义:Project Object Model项目对象模型

      2、pom.xml对于Maven工程是核心配置文件,与构建过程相关的一切设置都在这个文件中进行配置

    坐标

      1、数学中的坐标

      2、Maven中的坐标

        使用下面三个向量在仓库中唯一定位一个Maven工程

        groupid:公司或组织域名倒叙+项目名

        artifactid:模块名

        version:版本

    仓库

      1、仓库的分类

        本地仓库:

        远程仓库:

          - 私服:架设在当前局域网环境下,为当前局域网范围内所有Maven工程服务

          - 中央仓库:架设在Internet上,为全世界所有Maven工程服务

          - 中央仓库镜像:分担中央仓库的流量,提升用户访问速度

      2、仓库中保存的内容:Maven工程

        - Maven自身所需要的插件

        - 第三方框架或工具的jar包

        - 我们自己开发的Maven工程

    依赖

      1、Maven解析依赖信息时会到本地仓库中查找被依赖的jar包

        - 对于我们自己开发的Maven工程,使用mvn install命令安装后就可以进入仓库

      2、依赖的范围

        - compile范围依赖:对主程序、测试程序都有效、参与打包

        - test范围依赖:对主程序无效、对测试程序有效、参与打包

        - provided范围依赖:对主程序、测试程序有效、不参与打包、不参与部署

    生命周期

      1、各个构建环节执行的顺序:不能打乱顺序,必须按照既定的正确顺序来执行

      2、Maven的核心程序中定义了抽象的生命周期,生命周期中各个阶段的具体任务是由插件来完成的

      3、Maven核心程序为了更好的实现自动化构建,按照以下特点执行生命周期中的各个阶段:

        即无论要执行生命周期中的哪一个阶段,都从这个生命周期最初的位置开始执行

      4、插件和目标

        - 生命周期的各个阶段仅仅定义了要执行的任务是什么

        - 各个阶段和插件的目标是对应的

        - 相似的目标由特定的插件来完成

    在Eclipse中使用Maven

      1、Maven插件:Eclipse内置

      2、Maven插件的设置

        - installations:指定Maven核心程序的位置。

        - user settings:指定conf/settings.xml的位置,进而获取本地仓库的位置

  • 相关阅读:
    禁止用户打开HTML页面调试
    Git 忽略提交 .gitignore
    PHP日期时间处理
    HTML页面中JavaScript能获取到的各种屏幕大小信息
    移动浏览器H5页面通过scheme打开本地应用
    Python爬虫利器:Beautiful Soup
    MySQL分页查询优化
    JavaScrpit中异步请求Ajax实现
    PHP反射机制
    CentOS下nginx php mysql 环境搭建
  • 原文地址:https://www.cnblogs.com/LzMingYueShanPao/p/11206619.html
Copyright © 2011-2022 走看看