maven学习整理-基础知识
1.maven认识
maven是一种自动化的构建工具,它主要解决的问题有:
①项目中的划分规则:原先我们用package或文件夹的形式来划分不同模块,导致在一个项目中存在大量的文件夹和包代码显得庞大;使用maven后可以根据不同的模块属性将单个工程拆分成多个maven的java\web工程。
②jar包重用性:原先是每一个工程的lib文件夹下放置jar包加入到运行时环境,造成在不同的项目中使用相同的jar包,大量重复的jar包的降低服务器的磁盘存储空间;使用maven可以在服务器指定一个目录当做仓库(用来存储..jar等文件),不同的项目只需要引用即可不需要将jar包放入到本地lib文件下。
③jar包自动下载及jar之间的依赖:在pom.xml配置好相关信息时,maven会自动帮我们寻找\下载jar包及相依赖的包,自动将包导入到运行时环境。
2.maven安装及环境变量的配置
下载:点击可下载maven3不同版本:例如maven3.2.2的下载https://archive.apache.org/dist/maven/maven-3/3.2.2/binaries/apache-maven-3.2.2-bin.tar.gz
安装:下载完成解压即完成安装
环境变量配置:MAVEN_HOME= 解压的文件路径(建议路径不要有中文和空格) 在这里也可以配置M2_HOME=解压的文件路径
%MAVEN_HOME%\bin; 在path后面追加即可(注意若上次在path追加是没有添加分号,本次需要添加分号)
配置好环境变量好,在cmd键入mvn -v,给出版本号等信息,安装完成
3.maven常用命令
①mvn -v:查看版本号等信息
②mvn clean:清理有上次构建留下的文件夹及文件信息
③mvn build:编译主程序
④mvn test-compile:编译测试程序
⑤mvn test:执行测试
⑥mvn package:打包 达成jar或war包
⑦mvn install:安装 将程序安装在本地仓库中
⑧mvn deploy:部署 操作复杂,子eclipse中能部署单无法关闭
注:maven的默认的仓库实在c:user\电脑属性中的计算机名\.m2\reposity,本地仓库的位置可以修改maven解压路径\conf\settings.xml的55行附近添加 <localRepository>D:\Java\maven\Reposity</localRepository>而本地的仓库就是在D盘下的Java\maven\Reposity文件
4.pom.xml文件的简单认识
POM project object model 核心配置爱文件,与构建过程相关的一切设置都在这个文件进行配置
坐标 groupid:公司或组织域名倒叙+项目名 GAV---maven坐标 仓库中的坐标不重复--标识信息+仓库目录
模块名 artifactid:是新建工程项目的名字
版本 version :分为两类 SNAPSHOT为不稳定版 RELEASE为稳定版
坐标与仓库中路径的对应关系 groupid\artifactid\version\artifactid-version
5.对仓库的简单认识
仓库是用来存放jar等文件用来在项目pox.xml引用,根据仓库的是否在本地把仓库简单分为两类
-1.本地仓库:本地仓库(本地服务器仓库)用来为本地的maven提供服务
-2.远程仓库:根据远程仓库的服务的范围的大小可以将远程仓库有分为三类
-2.1.私服:搭建在区域网环境中,为局域网中的maven提供服务
-2.2.中央仓库镜像:洲际环境中,分担中央仓库的压力,为洲际的maven提供服务
-2.3.中央仓库;世界级环境中,为全球的maven提供服务
maven在查找下载jar是的优先级为:本地仓库>私服>中央仓库镜像>中央仓库
maven学习整理-基础知识的更多相关文章
- maven学习整理-进阶知识
在maven的阶知识主要学习的是maven在eclipse中的使用.依赖相关的问题.继承(父子工程).统一版本管理.聚合等相关知识 1.maven在eclipse中的使用 由上篇基础知识学习到怎样下载 ...
- jQuery学习笔记 - 基础知识扫盲入门篇
jQuery学习笔记 - 基础知识扫盲入门篇 2013-06-16 18:42 by 全新时代, 11 阅读, 0 评论, 收藏, 编辑 1.为什么要使用jQuery? 提供了强大的功能函数解决浏览器 ...
- Ant学习-001-ant 基础知识及windows环境配置
一.Ant 概要基础知识 Apache Ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发,用以构建应用,或结合其他开源测试工具例如 git.T ...
- 学习javascript基础知识系列第二节 - this用法
通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...
- 学习javascript基础知识系列第三节 - ()()用法
总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...
- 关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL))
关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL)) 欢迎fork本项目原始链接:关于图计算&图学习的基础知识概览:前置知识点学习 ...
- 学习Python3基础知识过程中总结
print()中end==""的用法 例子:用Python3输出九九乘法表: for i in range(1,10): for j in range(1,i+1): s=i*j ...
- three.js学习笔记--基础知识
基础知识 从去年开始就在计划中的three.js终于开始了 历史介绍 (摘自ijunfan1994的转载,感谢作者) OpenGL大概许多人都有所耳闻,它是最常用的跨平台图形库. WebGL是基于Op ...
- SQLServer学习笔记<>.基础知识,一些基本命令,单表查询(null top用法,with ties附加属性,over开窗函数),排名函数
Sqlserver基础知识 (1)创建数据库 创建数据库有两种方式,手动创建和编写sql脚本创建,在这里我采用脚本的方式创建一个名称为TSQLFundamentals2008的数据库.脚本如下: ...
随机推荐
- idea 配置tomcat
[Toc] #一.配置全局tomcat (类似eclipse中配置tomcat的路径) ##1.1 看图,打开Edit Configuratioms... ##1.2 展开Defaults,找到tom ...
- uuid 去中心化的唯一性
A Universally Unique IDentifier (UUID) URN Namespace https://tools.ietf.org/html/rfc4122.html A UUID ...
- PHP-模拟请求和操作响应
模拟请求 fsockopen <?php // 建立连接 $link = fsockopen('localhost', '80'); define('CRLF', "\r\n" ...
- Windows IO System
Windows IO System是由一些executive components组成,这些component可以认为是ntoskrnl.exe中相对独立的一些module. 整个IO System是 ...
- python学习笔记:数据类型——数字、字符串、元祖、字典
计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文本.图形.音频.视频.网页等各种各样的数据,不同的数据,需要定义不同的数 ...
- 8.Jmeter 快速入门教程 -- 如何使测试脚本更强大
添加基本的elements例如Sampler 或者一些监听器,就可以完成基本的测试.但有时需要更复杂的测试场景,所以还有更多其他的元素.清看下表,了解各种单元组的用途. 可添加的单元组 用途 Sa ...
- JeeSite使用(一)大步跑起来
背景:近期准备换个工作,想对之前自己写的代码进行重构,选择了JeeSite 需求:跑起来才是硬道理 方法:1.官方文档有坑,别信他 2.官方文档有坑,别信他 3.官方文档有坑,别信他 一 ...
- Data structure alignment by binary operation
在寫C的過程中,我們會很自然地以為,我連續宣告一堆大小不一的char array. 經過Complier之後這些char array未必是連續擺放.至於為什麼就要談到我們今天的主角了alignment ...
- C#中的元组对象Tuple
原文:C#中的元组对象Tuple 一.什么是元组 元组就是一些对象的集合,在我们编程时,比如一个人的信息,我们常常创建一个Person类去描述一个人,传统的做法如下: public class Per ...
- 【牛客网-剑指offer】用两个栈实现队列
题目: 用两个栈来实现一个队列,完成队列的Push和Pop操作. 队列中的元素为int类型. 知识点及概念: 队列:队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而 ...