maven

1.maven的好处

java项目管理工具

依赖管理

对jar包统一管理

项目名称

公司/组织

版本信息

本地仓库

由于索引的存在,找jar包很快

项目构建

依赖管理

传统项目

很大

包含jar包

多个项目需要同一jar包,需要反复copy,浪费空间

maven项目

很小

不包含jar包

通过坐标到本地仓库找

多个项目需要同一jar包,配置坐标

项目构建

传统项目

清理

编译

测试

例如junit单元测试

运行

打包

部署

maven项目

都通过一个命令完成上述步骤

例如:mvn tomcat:run

它跟eclipse和tomcat没有关系

直接就能运行web项目

方便项目间引用

私有项目分享到私服

2.安装

解压,路径不要出现中文

配置MAVEN_HOME

值为maven的根目录

尽量配置全局的,不要配置用户的

配置PATH

值为%MAVEN_HOME%\bin;

配置完成之后,执行:mvn -v

3.概念

本地仓库

程序员的本地计算机磁盘

中央仓库

apache的maven团队维护

私服

放在公司局域网

存放jar包

项目-->本地仓库-->私服-->中央仓库

4.settings.xml

是maven工具的全局配置

localRepository

指定本地仓库

6.常用命令

mvn clean

清理

清理项目根目录下的target目录

清理后target目录消失

mvn compile

编译

将项目中的java文件编译成.class文件

生成target目录

mvn test

测试

执行test/java目录下的单元测试代码

单元测试类必须是以xxxTest.java结尾

mvn package

打包

打包到target目录下

根据项目类型可以打包成jar或者war

mvn install

安装

打包项目到本地仓库

生命周期

在一套生命周期内:执行后面的命令,前面的命令会自动执行

compile、test、package、install、deploy

5.maven项目

src

项目源码

main

maven项目主体程序代码

java

java代码

resources

配置文件

webapp

相当于webContent

jsp

WEB-INF

test

测试目录

java

单元测试类根目录

resources

配置文件,一般不用

pom.xml

maven项目核心配置文件,有且仅有一个

target

编译完成之后才会有该目录

使用javaEE视图,更加符合上述目录

eclipse

配置maven

配置maven的根目录

配置user Settings

指定maven的settings.xml配置文件

构建索引

提高找jar包的速度

操作步骤,基于eclipse mars2

window

show view

other

maven

maven Repositories

local Repositories

local Repository

右键

rebuild Index

创建工程

maven project

普通maven工程

父工程

maven model

创建子模块

骨架artchtype

web工程

webapp

jar工程

quickstart

使用骨架创建工程会导致某些目录缺失,需要手动创建

一般创建简单的工程

坐标界面

Group Id

组织名称

一般是组织或公司域名倒序

Artifact Id

项目名称

Version

版本

SNAPSHOT

快照或者测试版本

RELEAZE

正式发行版本

Packaging

打包方式

jar

java工程

pom

父工程

war

web工程

scope

依赖范围

compile

编译、测试、运行

spring-core

test

测试

junit

provided

编译、测试

servlet-api

runtime

测试、运行

jdbc

system

编译、测试

本地的maven仓库之外的类库

默认是compile

注意:servlet-api、jsp-api一定要provided,防止打包部署时,出现jar包冲突

缺陷

web.xml缺失

jdk版本

配置jdk插件

自动补全

运行工程

run as...

maven build

记录命令执行历史

maven build...

输入执行命令

maven install

安装

maven clean

清理

依赖传递

maven的知识图谱的更多相关文章

  1. 【转】Java工程师知识图谱

    一.Java工程师知识图谱(思维导图版) 二.Java工程师知识图谱(文字链接版) 专业基石 数据结构 数组 链表 队列 栈 哈希表 堆 树 图 BitMap 算法思想 排序 查找 分支算法 动态规划 ...

  2. Atitit learn by need 需要的时候学与预先学习知识图谱路线图

    Atitit learn by need 需要的时候学与预先学习知识图谱路线图 1. 体系化是什么 架构 知识图谱路线图思维导图的重要性11.1. 体系就是架构21.2. 只见树木不见森林21.3. ...

  3. Atitit 图像处理知识点体系知识图谱 路线图attilax总结 v4 qcb.xlsx

    Atitit 图像处理知识点体系知识图谱 路线图attilax总结 v4 qcb.xlsx 分类 图像处理知识点体系 v2 qb24.xlsx 分类 分类 理论知识 图像金字塔 常用底层操作 卷积扫描 ...

  4. Atitit  补充说明 sql知识图谱与线路图attilax总结补充说明

    Atitit  补充说明 sql知识图谱与线路图attilax总结补充说明 1. 常见编程语言的分类  :命令式语言.函数式语言.逻辑语言1 1.1. 按照编程语言的代际划分,又2gl,3gl,4gl ...

  5. Atitit 图像处理知识点  知识体系 知识图谱v2

    Atitit 图像处理知识点  知识体系 知识图谱v2 霍夫变换(Hough Transform) 霍夫变换是图像处理中从图像中识别几何形状的基本方法之一,应用很广泛,也有很多改进算法.主要用来从图像 ...

  6. Atitit 图像处理知识点  知识体系 知识图谱

    Atitit 图像处理知识点  知识体系 知识图谱 图像处理知识点 图像处理知识点体系 v2 qb24.xlsx 基本知识图像金字塔op膨胀叠加混合变暗识别与检测分类肤色检测other验证码生成 基本 ...

  7. Atitit 研发体系建立 数据存储与数据知识点体系知识图谱attilax 总结

    Atitit 研发体系建立 数据存储与数据知识点体系知识图谱attilax 总结 分类具体知识点原理规范具体实现(oracle,mysql,mssql是否可以自己实现说明 数据库理论数据库的类型 数据 ...

  8. Atitit 知识图谱的数据来源

    Atitit 知识图谱的数据来源   2. 知识图谱的数据来源1 a) 百科类数据2 b) 结构化数据3 c) 半结构化数据挖掘AVP (垂直站点爬虫)3 d) 通过搜索日志(query record ...

  9. Atitit 知识图谱解决方案:提供完整知识体系架构的搜索与知识结果overview

    Atitit 知识图谱解决方案:提供完整知识体系架构的搜索与知识结果overview   知识图谱的表示和在搜索中的展1 提升Google搜索效果3 1.找到最想要的信息.3 2.提供最全面的摘要.4 ...

随机推荐

  1. USACO Section2.3 Cow Pedigrees 解题报告 【icedream61】

    nocows解题报告------------------------------------------------------------------------------------------ ...

  2. JMeter学习笔记(五) 文件上传接口测试

    此次测试的是上传图片接口,我把测试情况整理了一下,其他的上传文件接口都类似. 1.我通过jmeter的录制功能获取到了接口地址以及相关参数,如果有接口文档就会方便很多,此步骤就不多做说明了 2.因为上 ...

  3. Oracle 学习----:查看当前时间与Sqlserver语句不一样了

    oracle:select sysdate from dual sqlserver: select getdate() ---------------------试试这个--------------- ...

  4. pandas.read_csv to_csv参数详解

    pandas.read_csv参数整理   读取CSV(逗号分割)文件到DataFrame 也支持文件的部分导入和选择迭代 更多帮助参见:http://pandas.pydata.org/pandas ...

  5. HDU 4667 Building Fence 计算几何 凸包+圆

    1.三角形的所有端点 2.过所有三角形的端点对所有圆做切线,得到所有切点. 3.做任意两圆的外公切线,得到所有切点. 对上述所有点求凸包,标记每个点是三角形上的点还是某个圆上的点. 求完凸包后,因为所 ...

  6. HTML5应用:setCustomValidity(message)接口

    本文转自http://tid.tenpay.com/?p=3592 HTML5表单验证给前端人员带来了便利,但是在用户体验上存在一些缺陷,默认的提示对用户很不友好,无法准确的获取想要的信息.好在大牛们 ...

  7. HDU 3033 组合背包变形 I love sneakers!

    I love sneakers! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Tot ...

  8. 【linxu】部署docker容器虚拟化平台

    实验所涉内容 Docker 概述 部署 docker 容器虚拟化平台 docker 平台基本使用方法 创建docker镜像和发布镜像方法 Container 容器端口映射 一 Docker 概述 Do ...

  9. ACM-The Coco-Cola Store

    题目: Once upon a time, there is a special coco-cola store. If you return three empty bottles to the s ...

  10. Android自复制传播APP原理学习(翻译)

     Android自复制传播APP原理学习(翻译) 1 背景介绍 论文链接:http://arxiv.org/abs/1511.00444 项目地址:https://github.com/Tribler ...