一、编写pom.xml文件
    Maven项目的核心是pom.xml。POM(Project Object Model,项目对象模型)定义了项目的基本信息,用于描述项目如何构建,声明项目依赖等等。
    例子:
    
    modelVersion:指定当前POM模型的版本,只能是4.0.0.
    groupId:定义了项目属于哪个组,这个组往往和项目所在的组织或者公司存在的关联,例如网易公司教育产品部门创建k12工程,则应该是com.netease.edu.k12。
    artifactId:定义了当前Maven项目组中唯一的ID,我们为某个项目创建一个唯一的名称,比如:k12-web,唯一标示web工程项目
    version:某个项目的当前版本,例如:0.0.1-SNAPSHOT;SNAPSHOT是快照的意思,表示不稳定的版本,之后的章节再详细介绍,
    packaging:打包的类型,war或者jar。
    name:对用户更为友好的项目名称。不是必须的。
二、编写主代码
    Maven代码规范如下:
    
    Java文件放在src/main/java中,配置文件放在src/main/resources;测试文件分开存放,放在src/test/java中。
    首先编写代码,创建一个类在Java目录下。
    编译:mvn compile 命令;编译之后的class文件存放在target目录下,编译之前需要执行clean操作。删除target目录。
三、编写测试代码
    添加依赖的junit类。在pom文件中添加依赖。
    
    scope:依赖使用的范围,如果不写表示main下和test下都可以使用,添加test后,只有在test时才能使用,主代码中使用就会报错,不能引用jar包。
    单元测试包含的步骤:
    ①准备测试类和数据;
    ②执行要测试的行为;
    ③检查结果。
    使用Maven执行测试使用mvn clean test 命令。执行test命令的时候还执行了 clean:clean、resource:resource、compiler:compile、resource:testResources以及compiler:testCompile(主资源处理、主代码编译、测试资源处理、测试代码编译),这是Maven生命周期的一个特性,之后章节介绍。
    注意:Maven的核心插件之一——compiler插件默认只支持编译Java1.3 ,所以需要我们自己手动配置插件。
    
    source:支持编译的版本。
四、打包和运行
    使用mvn clean package 命令进行打包。Maven会在打包之前进行编译、测试等操作。将输出的jar包存放在target/目录下。这样复制这个jar包到其他工程中就能使用。
    如果想通过Maven直接引用这个jar包还需要一个安装的步骤,就是将这个jar包放在本地仓库中。这样本地其他项目都能使用,只需要在pom文件中配置下就可以。如果供其他人使用还需要发布到远程仓库,后面介绍。
    安装命令:mvn clean install 
    执行install的时候前面的编译测试都是还会执行。后续生命周期详细介绍。

Maven 基础详解的更多相关文章

  1. elasticSearch+spring 整合 maven依赖详解

    摘自:http://www.mayou18.com/detail/nTxPQSyu.html [Elasticsearch基础]elasticSearch+spring 整合 maven依赖详解 Ma ...

  2. Dom探索之基础详解

    认识DOM DOM级别 注::DOM 0级标准实际并不存在,只是历史坐标系的一个参照点而已,具体的说,它指IE4.0和Netscape Navigator4.0最初支持的DHTML. 节点类型 注:1 ...

  3. Maven使用详解

    Maven使用详解 世间万物相生相克,今年本来的目标是主要研究asp.net mvc以及windows平台相关的DI, ORM框架,突然有一天想研究一个Java EE里面相应的框架都是怎么玩的,于是研 ...

  4. eclipse里面构建maven项目详解(转载)

    本文来源于:http://my.oschina.net/u/1540325/blog/548530 eclipse里面构建maven项目详解 1       环境安装及分配 Maven是基于项目对象模 ...

  5. Android中Canvas绘图基础详解(附源码下载) (转)

    Android中Canvas绘图基础详解(附源码下载) 原文链接  http://blog.csdn.net/iispring/article/details/49770651   AndroidCa ...

  6. javaScript基础详解(1)

    javaScript基础详解 首先讲javaScript的摆放位置:<script> 与 </script> 可以放在head和body之间,也可以body中或者head中 J ...

  7. Python学习一:序列基础详解

    作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/7858473.html 邮箱:moyi@moyib ...

  8. Python学习二:词典基础详解

    作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/7862377.html 邮箱:moyi@moyib ...

  9. 深入浅出DOM基础——《DOM探索之基础详解篇》学习笔记

    来源于:https://github.com/jawil/blog/issues/9 之前通过深入学习DOM的相关知识,看了慕课网DOM探索之基础详解篇这个视频(在最近看第三遍的时候,准备记录一点东西 ...

随机推荐

  1. CentOS7部署GeoServer

    CentOS7部署GeoServer 一.安装JDK81.下载jdk1.8 wget http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a ...

  2. APP端有原生态的控件,但嵌入了H5页面,怎么定位到H5页面的元素

    appium 通常有很多种定位元素方法,例如xpath,driver.find_element_by_accessibility_id等,安卓sdk自带的uiautomatorviewer但是对于H5 ...

  3. mysql 5.7 主从复制搭建及原理

    1. 主从复制搭建 1.1 环境准备 OS: Ubuntu 18.04 master: 192.168.0.3 slave: 192.168.0.6 1.2 安装依赖包 # Ubuntu apt-ge ...

  4. Redis 设计与实现 6:五大数据类型之列表

    列表对象有 3 种编码:ziplist.linkedlist.quicklist. ziplist 和 linkedlist 是 3.2 版本之前的编码. quicklist 是 3.2 版本新增的编 ...

  5. java零基础之--JDK安装篇

    ---恢复内容开始--- 很多零基础学习者在开始学习java中很难理解JDK的安装和配置,以下是基于Windows 7 的安装配置流程(Windows 10类似) 1. 在安装之前我们先了解几个名词: ...

  6. Android开发用到的几种常用设计模式浅谈(一):组合模式

    1:应用场景 Android中对组合模式的应用,可谓是泛滥成粥,随处可见,那就是View和ViewGroup类的使用.在android UI设计,几乎所有的widget和布局类都依靠这两个类.组合模式 ...

  7. ElasticSearch教程——自定义分词器(转学习使用)

    一.分词器 Elasticsearch中,内置了很多分词器(analyzers),例如standard(标准分词器).english(英文分词)和chinese(中文分词),默认是standard. ...

  8. Linux sed 命令总结

    一.sed格式命令 sed 命令行格式为:sed [选项] 'command' 输入文本 二.sed命令的选项 sed [选项] [动作] 选项与参数: -n :使用安静(silent)模式.在一般 ...

  9. 一、linux安装mysql

    一.下载mysql免编译包: wget http://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.g ...

  10. 如果你的 HTML 里全是 div,那就要小心了

    做前端开发的同学都知道,一个网页的基本组成部分是 HTML,JavaScript 和 CSS.开发人员通常更关注 JavaScript 和 CSS ,实践着各种语言规范和设计模式.对于 HTML 的关 ...