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. Http状态码枚举(摘自 Microsoft 程序集 System.dll)

    // 摘要: // 包含为 HTTP 定义的状态代码的值. public enum HttpStatusCode { // 摘要: // 等效于 HTTP 状态 100. System.Net.Htt ...

  2. python基础实践(二)

    -*-越简单越快乐-*-# -*- coding:utf-8 -*-# Author:sweeping-monkQuestion_1 = "python中的整数运算"Method_ ...

  3. NOIP2018 集训(二)

    A题 神炎皇 问题描述 神炎皇乌利亚很喜欢数对,他想找到神奇的数对. 对于一个整数对 \((a,b)\) ,若满足 \(a+b\leq n\) 且 \(a+b\) 是 \(ab\) 的因子,则称 为神 ...

  4. Wordpress 为用户或角色 role 添加 capabilities(权限)

    首先查看角色具有哪些权限: $admin_role_set = get_role( 'administrator' )->capabilities; $author_role_set = get ...

  5. 选择MariaDB的压缩数据引擎TokuDB

    业务运用场景 数据基本不用update, 不频繁的范围查询 数据存储量较大(为以后准备) 选择占用磁盘较小的db 业务对数据库插入操作频繁,为避免影响其它业务,需要将直播业务的DB 独立出来,选择另外 ...

  6. svn 数据库 账号密码

    47.106.107.201 云商传媒李孔文 2018/8/22 19:26:35 root 云商传媒李孔文 2018/8/22 19:26:39 sn123456 云商传媒李孔文 2018/8/22 ...

  7. linux备忘录-基本命令

    基本命令 将命令分类为获取信息类,文件管理类,目录管理类,文本处理类,系统类,工具类. 获取信息类 uname # 输出所有信息 # 一行输出,空格分割 uname -a # 输出内核名称 uname ...

  8. python完成留言板功能

    <!DOCTYPE html> <html lang="zh"> <head> <meta charset="utf-8&quo ...

  9. JSP/Servlet Web 学习笔记 DayThree

    JSP内置对象 使用JSP语法可以存取这些内置对象来执行JSP网页的Servlet环境相互作用.内置对象其实是由特定的Java类所产生的.每一种内置对象都映射到一个特定的Java类或者端口,在服务器运 ...

  10. BZOJ4826 [Hnoi2017]影魔 【线段树 + 单调栈】

    题目链接 BZOJ4826 题解 蒟蒻智力水平捉急orz 我们会发现相邻的\(i\)和\(j\)贡献一定是\(p1\),可以很快算出来[然而我一开始忘了考虑调了半天] 我们现在只考虑不相邻的 我们只需 ...