关于Maven,我是如何理解并使用的

本文涉及的产品
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
简介: Maven是一个构建工具,这个构建工具能够帮助你更好的管理包的依赖、还能够为你实现项目的热部署、还能为你运行所有的测试用例、还能够为你项目的打包、发布、还能够实现项目的多模块构建。本文谈...

 

网络异常,图片无法展示
|
image.gif

image.gif

Maven是一个构建工具,这个构建工具能够帮助你更好的管理包的依赖、还能够为你实现项目的热部署、还能为你运行所有的测试用例、还能够为你项目的打包、发布、还能够实现项目的多模块构建。本文谈谈,我是如何理解Maven并使用的。

先说一说Maven到底能干什么呢,大概有以下这些作用:

1、很好的管理项目中包的依赖关系。

2、还能够实现项目的热部署(能够直接将项目发布到远程服务器)。

3、实现项目的打包、部署。

4、还能够运行所有的测试用例。

5、实现项目的多模块构建。

这篇文章,我会带着大家建立一个项目,系统地总结下Maven的知识和实践思路,希望对你有所帮助。内容分成以下几个部分:

    • Maven的使用
    • 使用命令来创建一个java工程
    • 工程目录解析
    • 打包
    • 构建一个web工程
    • Maven在MyEclipse/eclipse上的用法
    • 在Eclipse上创建Maven的JAVA工程
    • 在Eclipse创建Maven的Web工程
    • IDEA的使用
    • IDEA的使用技巧

    01 Maven的使用

    1、下载MAVEN包  

    1
    解压到指定的目录  G:/maven的目录下

    image.gif

    2、要使用命令的话首先要配置环境变量  

    1
    M2_HOME=G:\maven\apache-maven-3.6.02
       在path中进行引用3
       %M2_HOME%\bin

    image.gif

    3、测试

    ‍‍‍‍

    1
    在命令行输入 mvn  -version2
    3
    Apache Maven 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; 2017-04-04T03:39:06+08:00)4
    Maven home: G:\maven\apache-maven-3.5.0\bin\..5
    Java version: 1.8.0_101, vendor: Oracle Corporation6
    Java home: C:\Program Files (x86)\Java\jdk1.8.0_101\jre7
    Default locale: zh_CN, platform encoding: GBK8
    OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

    image.gif

    4、说明配置成功。

    02 使用命令来创建一个java工程

    1、首先创建一个存放工程的目录  

    1
    C:\Users\apple\Desktop\maven-project2、使用命令进入这个目录

    image.gif

    1
    cd /d C:\Users\apple\Desktop\maven-project3、使用如下命令

    image.gif

    
             

    image.gif

    1
    mvn archetype:generate    ------>获取创建的maven工程的模板2
    此时会出现2300多个构建工程的模板 默认选中的1311号模板(创建JAVA工程的模板)3
    直接enter4
    选中模板的版本号------->默认就可以5
    groupId:组id  这个一般和主包保持一致6
    artifactId:这个一般写项目的工程名字7
    选择版本号:------> 一般默认就好8
    写包名 ------>默认和groupId一致  默认就好9
    确认 : Y4、此时再去看这个目录就会多一个项目的文件夹

    image.gif

    03 工程目录解析

    目录解析如下:

    1
    --------------src                               //主要放的是JAVA  资源  测试文件2
    ------------------------------------main                //JAVA文件和运行的配置文件3
    ------------------------------------------------java          //这个放的是JAVA的配置文件4
    ------------------------------------test                 //放的是测试文件和测试需要的资源5
    -----------------------------------------------java          //测试的JAVA代码6
    ---------------POM               //项目自身的坐标 常量 项目的依赖包  项目依赖的组件

    image.gif

    项目坐标:

    image.gif

    
             

    image.gif

    1
    <groupId>com.qy.shopping</groupId>2
      <artifactId>MAVEN_01</artifactId>3
      <version>1.0-SNAPSHOT</version>4
      <packaging>jar</packaging>5
    6
      <name>MAVEN_01</name>7
      <url>http://www.example.com</url>8
    库的依赖:9
    <dependencies>10
    <dependency>11
      组的id12
          <groupId>junit</groupId>13
          项目的名字14
          <artifactId>junit</artifactId>15
          项目的版本号16
          <version>4.11</version>17
         当前这个库在什么时候有效18
          <scope>test</scope>19
        </dependency>20
      </dependencies>21
    22
    库:23
       本地库    远程库04 打包 
    1、首先使用命令进入工程的根目录   
    1
    C:\Users\apple\Desktop\maven-project\MAVEN_01\2
    mvn package ---------------------->生成目标文件2、进入目标文件1
    Java -jar  MAVEN_01-1.0-SNAPSHOT.jar 主类的全路径  运行出来
    05 构建web工程步骤  
    1、进入存放工程的目录   
    1
    cd /d C:\Users\apple\Desktop\maven-project2、获取所有的模板
    1
    mvn archetype:generate3、选择1316号模板 
    1
    输入1316------>后面的跟前面是一样的4、工程目录的解析   
    1
    -------------------------------src2
    -------------------------------------------main3
    ---------------------------------------------------------java            存放java文件的4
    ---------------------------------------------------------webapp         存放对外共享的资源5
    -------------------------------pom

    image.gif

    注意:

    每一种不同类型的工程在maven中对应了不同的模板

    java工程有java工程的模板

    web工程有web工程的模板

    Suite工程有suite工程的模板(当成父亲工程来用)

    06 Maven在MyEclipse/eclipse的用法

    1、下载MAVEN在Eclipse上的插件包  

    2、进入window----perfrence----输入maven

    3、installations----add添加本地的maven的根路径

    4、设置本地的仓库位置以及设置文件的位置  

    1
    注意:setting.xml文件的位置是在本地仓库的根路径下有个 setting.xml配置文件  实际上这个配置文件并不在这里  原本是在maven的加压路劲下的 conf目录里面  那么就将这个文件copy到库的根路径下2
    注意:库的位置默认是在c盘的用户目录下的.m2文件里面  这个路径是可以改的

    image.gif

    07 在Eclipse上创建maven的JAVA工程

    ‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍1、右键---->新建

    1
    maven工程---->Create  a  simple project---->填写项目坐标(组的id、项目名字、打包的方式(jar)、依赖的版本)---->完成

    image.gif

    2、项目的目录解析  

    1
    rc/main/java:写JAVA代码的地方2
    src/main/resource:这个就是存放配置文件的地方3
    src/test/java:测试文件的地方4
    src/test/resoucre:测试文件存放资源的地方5
    target:这个是存放打包后的文件和资源的地方6
    Pom:存放的是(项目坐标、依赖包、依赖的组件、各种配置)

    image.gif

    3、编写项目并进行测试

    08 在Eclipse上创建maven的Web工程

    1、右键---->新建

    1
    maven工程----->next----->maven archetype webapp(模板)----->下一步(填写项目的坐标)------>finish(完成)

    image.gif

    2、目录解析

    image.gif

    1
    ----------------------------------------java Resource2
    ---------------------------------------------------------src/main/resource  :编写资源文件的地方3
    ---------------------------------------------------------src/man/java      :编写JAVA代码的地方4
    ---------------------------------------src/main5
    --------------------------------------------------------webapp:这个目录就相当于以前的Web-content/Web app目录

    image.gif

    3、导入web工程所需要的常用的包

     

    1
    <!--导入我们的Servlet的API -->2
        <dependency>3
          <groupId>javax.servlet</groupId>4
          <artifactId>javax.servlet-api</artifactId>5
          <version>3.1.0</version>6
          <scope>provided</scope>7
        </dependency>8
     9
        <!--导入我们jstl的标签库的包 -->10
        <dependency>11
          <groupId>javax.servlet.jsp.jstl</groupId>12
          <artifactId>javax.servlet.jsp.jstl-api</artifactId>13
          <version>1.2.1</version>14
        </dependency>15
     16
        <dependency>17
          <groupId>javax.servlet</groupId>18
          <artifactId>jsp-api</artifactId>19
          <version>2.0</version>20
          <scope>provided</scope>21
        </dependency>22
     23
        <dependency>24
          <groupId>org.apache.taglibs</groupId>25
          <artifactId>taglibs-standard-impl</artifactId>26
          <version>1.2.5</version>27
        </dependency>28
        29
        <!--引入junit类 -->30
        <dependency>31
          <groupId>junit</groupId>32
          <artifactId>junit</artifactId>33
          <version>4.12</version>34
          <scope>test</scope>35
        </dependency>

    image.gif

    4、创建我们的jsp文件  

    1
    <%@ page language="java" contentType="text/html; charset=UTF-8"2
        pageEncoding="UTF-8"%>3
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">4
    <html>5
    <head>6
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">7
    <title>Insert title here</title>8
    </head>9
    <body>10
     11
      this is index jsp page12
     13
    </body>14
    </html>

    image.gif

    5、测试(右键---->run on server)

    注意:

    默认创建的工程没有写JAVA代码的地方,所以需要手动创建

     

    1
    在下面的src/main上面右键----->new folder---->取名字java 完成  就自动跑上去了

    image.gif

    09 IDEA的使用

    1、首页菜单的描述

    1
    Create new project :创建一个新的项目2
      Import project:导入一个项目(IDEA的项目)3
      Open:打开一个项目4
      Check out from version control:表示从版本控制工具的仓库中检出一个项目

    image.gif

    2、创建一个java工程  

    1
    Create new project -------选择maven------选择create from archetype------next-----填写项目的坐标

    image.gif

    10 IDEA的使用技巧

    1、将快捷键设置成Eclipse的快捷键  

    1
    File------setting-----keymap----->选择Eclipse

    image.gif

    2、编码的设置

    image.gif

    1
    File-----setting-----输入encoding2
     3
    File encoding  ---->选择全局的编码和工程的编码3、字体的设置  
    1
    File------setting-----输入font-----找到font-----右侧就可以设置字体的大小
    4、快捷键的自定义     1
    File------setting-----Editor----live templates----->  +  ----->添加组(bobo1)----->完成2
                                            +  ----->live template ---->输入框输入  提示的简写------>在template text中输入要表达的内容3
     4
    选中创建好的模板----->右键  Change Context----->选中java(表示的是在java代码中进行提示)-----确定5、更改主题
    1
    File------------- setting------------------Appearance--------右边就有主题的选择(选择适合自己自己的主题)6、IDEA怎么安装maven      1
    File------------setting------------------输入maven-------->右侧进行配置7、Tomcat的安装
    1
    Run------Edit configrations-----左上角 +  ----------->找到Tomcat server-------->Local----->Application server(后面的浏览)------>Configration----->找到Tomcat的根目录----->完成

    image.gif

    最后的话

    毫无疑问,在Java生态里,Maven是最流行的软件项目自动构建工具。它已经取代Ant很久了,这得益于它在项目管理,依赖管理及解决方案方面提供了更简单而且是声明式的模型,而且它不仅有着良好定义的构建阶段(如编译和测试),同时还支持众多与构建,配置和部署代码相关的插件。

    友情提示:如果你是Maven新手或者缺乏使用经验,那么最好是先花点时间去学一下它的基本用法,而不是通过提示和技巧的方式来学习。

    <END>


    点个赞,证明你还爱我

    相关文章
    |
    18天前
    |
    存储 缓存 Java
    一文搞懂:什么是maven
    一文搞懂:什么是maven
    10 0
    |
    2月前
    |
    存储 XML Java
    【Maven技术专题】「入门到精通」教你如何使用Maven中引用依赖本地Jar包,并进行打包输出
    【Maven技术专题】「入门到精通」教你如何使用Maven中引用依赖本地Jar包,并进行打包输出
    121 0
    |
    11月前
    |
    IDE Java 程序员
    Maven基础学习---1、Maven的作用、什么是Maven
    Maven基础学习---1、Maven的作用、什么是Maven
    |
    存储 Java 程序员
    【Maven相关知识 一】Maven基本概念和基本功能
    【Maven相关知识 一】Maven基本概念和基本功能
    123 0
    |
    消息中间件 JavaScript 小程序
    从根上理解Maven拉包原理,搞定Maven全功能 上
    从根上理解Maven拉包原理,搞定Maven全功能 上
    |
    Java 测试技术 Maven
    从根上理解Maven拉包原理,搞定Maven全功能 下
    从根上理解Maven拉包原理,搞定Maven全功能 下
    |
    Java 关系型数据库 测试技术
    Maven 核心原理
    Maven 核心原理 标签 : Java基础 Maven 是每一位Java工程师每天都会接触的工具, 但据我所知其实很多人对Maven理解的并不深, 只把它当做一个依赖管理工具(下载依赖、打包), Maven很多核心的功能反而没用上.
    1730 0
    |
    Java fastjson 应用服务中间件
    Maven的基本概念(三)下
    Maven的基本概念(三)
    144 0
    Maven的基本概念(三)下
    |
    前端开发 JavaScript Java
    Maven的基本概念(三)上
    Maven的基本概念(三)
    175 0
    Maven的基本概念(三)上
    |
    Oracle Java 关系型数据库
    Maven实战与原理分析(二):maven实战
    Maven实战与原理分析(二):maven实战
    Maven实战与原理分析(二):maven实战