Maven作用及安装
与传统开发项目相比使用Maven:
1)Maven可以管理jar文件
2)自动下载jar和它的文档,源代码
3)管理jar直接的依赖,a.jar需要b.jar,maven会自动下载b.jar
4)管理你需要的jar版本
5)编译程序,把java编译成class
6)测试代码是否正确
7)打包文件,形成jar文件或者war文件
8)部署项目
构建:
构建是面向过程的,就是一些步骤,完成项目代码的编译,测试,运行,打包,部署等。
maven支持的构建包括有:
1)清理:把之前项目编译的东西删除掉,新的编译代码做准备
2)编译:把程序源代码编译为执行代码,java-class文件
可以批量的,maven可以同时把成百上千的文件编译为class
javac不一样,javac一次编译一个文件
3)测试:maven可以执行测试程序代码,验证你的功能是否正确。
批量的,maven同时执行多个测试代码,同时测试很多功能。
4)报告:生成测试结果的文件,测试通过没有。
5)打包:把你的项目中所有的class文件,配置文件等所有资源放到一个压缩文件中。
这个压缩文件就是项目的结果文件,通常是java程序,压缩文件jar扩展名。
对于web应用,压缩文件扩展名是.war
6)安装:把5中生成的jar,war文件安装到本机仓库
7)部署:程序安装好可以执行
maven核心概念:
1)POM:一个文件 名称是pom.xml,pom翻译过来叫做项目对象模型。
maven把一个项目当作一个模型使用。可以控制maven苟江项目的过程,管理jar依赖。
2)约定的目录结构:maven项目的目录和文件的位置都是规定的。
3)坐标:是一个唯一的字符串,用来表示资源的
4)依赖管理:管理你的项目可以使用jar文件
5)仓库管理(了解):你的资源存放的位置
6)生命周期(了解):maven工具构建项目的过程,就是生命周期
7)插件和目标(了解):执行maven苟江的时候用的工具是插件
8)继承
9)聚合
前期使用maven的命令,完成maven使用,在idea中直接也可以使用maven
maven工具的安装和配置:
1)maven官网下载安装包 apaohe-maven-3.3.9-bin.zip 和jdk1.8
2)解压安装包,解压到一个目录,非中文目录。
子目录bin:执行程序,主要是mvn.cmd
conf:maven工具本身的配置文件 settings.xml
3)配置环境变量
在系统的环境变量中,指定一个M2_HOME的名称,指定它的值是maven工具安装目录,bin之前的目录
M2_HOME=E:\maven\apache-maven-3.3.9
再把M2_HOME加入到path中,在所有路径之前加入%M2_HOME%\bin;
4)验证,新的命令行中,执行mvn -v
注意:需要配置JAVA_HOME,指定jdk路径
出现如下内容,maven安装,配置正确
C:\Users\wtyld>mvn -v
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
Maven home: E:\maven\apache-maven-3.3.9
Java version: 15.0.2, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jdk-15.0.2
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "dos"
Maven作用及安装的更多相关文章
- windows/Linux/Mac下安装maven,maven作用
Linux下安装maven 1.首先到Maven官网下载安装文件,目前最新版本为3.0.3,下载文件为apache-maven-3.3.9-bin.tar.gz,下载可以使用wget命令: 2.进入下 ...
- maven笔记(maven使用与安装,eclipse中maven的配置,maven项目的创建)
一.初识maven 1.maven是什么? 他是一个项目管理器,配置好pom配置文件后,maven会管理项目的依赖文件等,当项目用到外部jar包时,maven帮助我们去网上下载并打包发到Tomcat中 ...
- maven私服nexus安装
maven私服nexus安装 1.nexus特性 1.1.nexus私服实际上是一个javaEE的web 系统 1.2.作用:用来管理一个公司所有的jar包,实现项目jar包的版本统一 1.3.jar ...
- maven 学习1 -安装maven 并执行编译命令
一.maven 下载与安装(安装好jdk的前提下) 1.下载地址:http://maven.apache.org/download.cgi (选择最新的zip版本),下载完毕后解压 2.安装:系统p ...
- eclipse下maven插件的安装
最近公司项目要求使用maven来进行项目的管理开发,在这里记录一下eclipse下maven插件的安装. maven插件在eclipse下安装害得我挺恼火的. 我想用最简单的那种方式--在线安装: 通 ...
- maven下载,安装与eclipse中maven配置
1.maven下载.安装与环境变量配置 http://blog.csdn.net/jiuqiyuliang/article/details/45390313 2.Eclipse中maven的配置 ht ...
- maven的下载安装,配置本地仓库
maven的下载安装 下载地址:http://maven.apache.org/download.cgi 下载完成后解压到某一个目录 配置环境变量 第一个环境变量 MAVEN_HOME A:\mave ...
- Maven 下载、安装、配置学习
一.Maven 下载与安装 电脑已安装:JDK.Eclipse 1.下载Maven:http://maven.apache.org/download.cgi 2.解压并安装:解压路径名不能有中文! 3 ...
- Windows10下安装Maven以及Eclipse安装Maven插件 + 创建Maven项目
在官网下载Maven http://maven.apache.org/download.cgi 下载下来后加压缩,将apache-maven-3.5.4文件夹复制到想要存放它的位置,我放在了 ...
随机推荐
- cmake之生成动态库
演示源码下载地址: https://github.com/mohistH/demo_cmake_dylib 把文仅为参考. 以实际情况为准 1.目录结构 │ CMakeLists.txt │ inde ...
- 【LeetCode】1021. Remove Outermost Parentheses 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 遍历 日期 题目地址:https://leetcod ...
- 【机器学*】k-*邻算法(kNN) 学*笔记
[机器学*]k-*邻算法(kNN) 学*笔记 标签(空格分隔): 机器学* kNN简介 kNN算法是做分类问题的.思想如下: KNN算法的思想总结一下:就是在训练集中数据和标签已知的情况下,输入测试数 ...
- 【LeetCode】Gas Station 解题报告
[LeetCode]Gas Station 解题报告 标签(空格分隔): LeetCode 题目地址:https://leetcode.com/problems/gas-station/#/descr ...
- 【LeetCode】224. Basic Calculator 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 栈 参考资料 日期 题目地址:https://lee ...
- 【LeetCode】127. Word Ladder 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 题目地址: https://leetcode.com/problems/word-lad ...
- 分析一个简单的goroutine资源池
分析一个简单的goroutine资源池 tunny. 从资源池中获取goroutine并进行处理的逻辑如下: tunny将goroutine处理单元封装为workWrapper,由此可以对gorout ...
- Adversarial Self-Supervised Contrastive Learning
目录 概 主要内容 Linear Part 代码 Kim M., Tack J. & Hwang S. Adversarial Self-Supervised Contrastive Lear ...
- 台湾旺玖MA8601|USB HUB方案|MA8601测试版
MA8601是USB 2.0高速4端口集线器控制器的高性能解决方案,完全符合通用串行总线规范2.0.MA8601继承了先进的串行接口技术,当4个DS(下游)端口同时工作时,功耗最低. MA8601采用 ...
- CSS3的nth-child() 选择器,表格奇偶行变色
nth-child() 应用背景 CSS3的nth-child() 选择器,我之前很少用,在做表格偶数行变色的时候,我通常在绑定的时候,做一个js判断,来加一个css,从而使表格偶数行和奇数行颜色不一 ...