Maven学习归纳(一)——简单的环境配置入门
一、Maven的基本概念
Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的编译,测试,构建,报告和文档的软件项目管理工具和解决依赖关系的工具。
1.1 项目的构建
项目的构建是高度自动化、跨平台,可重用的组件,使用Maven就可以帮我们完成一个完整的标准化项目构建过程。Maven定义了软件开发的整套流程体系,并进行了封装,开发人员只需要指定项目的构建流程,无需针对每个流程编写自己的构建脚本。
1.2 依赖管理
除了项目构建,Maven最核心的功能是软件包的依赖管理,能够自动分析所需要的依赖软件包,并到Maven的中心仓库去下载
1.3 使用Maven的好处
a) 管理依赖的jar包:使用Maven,以规范的方式下载jar包,因为所有知名框架或第三方工具的jar包已经按照统一的规范存放到了Maven的中央仓库中。Maven不仅帮你导入需要的包,还会将该jar包所依赖的jar包都自动导入进来。
b) 管理工程之间的依赖关系:项目非常大的时候,可使用Maven将一个项目拆分成多个工程,最好是一个模块对应一个工程,利于分工协作。而且模块之间可以发送消息。
c) 节约空间:使用Maven,将jar包仅仅保存在“仓库”中,有需要该文件时,就引用该文件接口,不需要复制文件过来占用空间。
二、Maven的下载与环境的配置
1. Maven的下载地址:http://maven.apache.org/download.cgi

2.下载后直接解压:
存放路径自己决定,我是放在C:\Program Files\Java路径下。
3.配置maven环境:
我的电脑->属性->高级系统设置->新建环境变量:
MAVEN_HOME : 变量值为刚解压的maven路径, C:\Program Files\Java\apache-maven-3.5.2

Path: %MAVEN_HOME%\bin

4. 验证是否配置Maven成功
使用win+R打开cmd窗口,然后输入命令:mvn -v
若出现一下信息,则说明Maven已经安装成功了

三、Maven项目的认识及基本配置
3.1 Maven目录分析
bin:含有mvn运行的脚本
boot:含有plexus-classworlds类加载器框架
conf:含有settings.xml配置文件
lib:含有Maven运行时所需要的java类库
LICENSE.txt, NOTICE.txt, README.txt:针对Maven版本,第三方软件等简要介绍
3.2 Maven的版本规范
maven的配置文件看似很复杂,其实只要根据项目的实际背景,设置个别几个配置项而已。
maven有自己的默认配置,使用者除费必要,并不需要修改那些约定内容,这就是所谓的“约定优于配置”
每个阶段的任务都知道怎么正确完成自己的工作,比如compile任务就知道从src/main/java下编译所有的Java文件,并把它的输出class文件存放在target/classes中。
对maven来说,采用"约定优于配置"的策略可以减少修改配置的工作量,也可以降低学习成本。
MavenProjectRoot(项目根目录)
|----src
| |----main
| | |----java ——存放项目的.java文件
| | |----resources ——存放项目资源文件,如spring, hibernate配置文件
| |----test
| | |----java ——存放所有测试.java文件,如JUnit测试类
| | |----resources ——存放项目资源文件,如spring, hibernate配置文件
|----target ——项目输出位置
|----pom.xml ----用于标识该项目是一个Maven项目

3.3 修改本地仓库位置
找到Maven目录: maven目录/conf/setting.xml
默认本地仓库:
修改本地仓库: D:\Maven_LocalRepository

3.4 新建一个简单的HelloWrold项目


3.5 修改默认jdk为JavaSE-1.8

3.5 选择自己安装的installations,去掉系统默认给的
打开设置,在上面输入maven,弹出下面这个界面

默认勾选的去掉勾,自己再add一个本地的来

最终如下显示:

3.6 继续设置本地仓库路径
上面打开的窗口先别关,往下看到User Settings选项


3.7 将国外Maven镜像修改成阿里云镜像
因为默认的Maven国外镜像下载Maven依赖包的时候很慢很慢很慢,改成阿里云镜像快很多。
在maven安装目录下的setting.xml文件上,找到<mirror> </mirror>,将下面这坨代码复制进去
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>

以上就是Maven的简单环境配置入门 ~ o(* ̄▽ ̄*)o
Maven学习归纳(一)——简单的环境配置入门的更多相关文章
- Sublime Text3 for Java 编译运行环境配置 入门详解 - 精简归纳
Sublime Text3 for Java 编译运行环境配置 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 24 转载请注明出处!️ 目录 Sublime Text3 for ...
- MyBatis学习笔记(一):MAVEN的下载,安装与环境配置和在IDEA中配置maven
一.下载 官网下载 :http://maven.apache.org/download.cgi 网速慢的也可以下载我配置好的国内阿里云仓库的.以下以我配置好的为例: 下载链接:https://pan. ...
- google protobuf学习笔记:windows下环境配置
欢迎转载,转载请注明原文地址:http://blog.csdn.net/majianfei1023/article/details/45371743 protobuf的使用和原理,请查看:http:/ ...
- Maven的下载、安装与环境配置
在创建一个项目时,搭建环境往往是编写具体代码的先决条件,而获取到所有需要的jar包是其中的重中之重.起初,人们在需要jar包的时候总会在网上四处查找,而且如果不知道某jar包版本的更迭,写出的代码或许 ...
- Lex与Yacc学习(一)之环境配置篇
Abstract 在开发程序的过程中经常会遇到文本解析的问题,例如:解析 C 语言源程序,编写 脚本引擎等等,解决这种文本解析的方法有很多,一种方法就是自己手动用 C 或者 C++直接编写解析程序,这 ...
- maven的不同版本下载及环境配置
Maven不同版本下载及环境配置 Maven下载 去到官网 https://maven.apache.org/ 会发现是最新版本,但是一般下载的话,都会下载比最新的版本要低两到三个小版本的,这里就下载 ...
- TestNG+Maven+IDEA 环境配置+入门
一.环境配置 1.安装IDEA(参考:https://blog.csdn.net/m0_38075425/article/details/80883078) 2.在Prefernces,通过Plugi ...
- Java开发学习(三十七)----SpringBoot多环境配置及配置文件分类
一.多环境配置 在工作中,对于开发环境.测试环境.生产环境的配置肯定都不相同,比如我们开发阶段会在自己的电脑上安装 mysql ,连接自己电脑上的 mysql 即可,但是项目开发完毕后要上线就需要该配 ...
- Maven学习之(一)基本配置
安装maven还几次没成功,不过最后还是查资料成功了,所以记录一下. 1.安装JDK,比较简单,就不说明了. 2.配置java的环境变量 JAVA_HOME (最开始因为java配置成C:\Progr ...
随机推荐
- hadoop的基础思想
转载 http://www.superwu.cn/2014/01/10/963 1.1.1. hadoop的核心思想 Hadoop包括两大核心,分布式存储系统和分布式计算系统.1.1.1.1. 分布式 ...
- (十一)c#Winform自定义控件-列表
前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. 开源地址:https://gitee.com/kwwwvagaa/net_winform_custom_control ...
- spring boot 打 war包
spring boot .spring cloud打 war包,并发布到tomcat中运行 1.pom文件修改 <packaging>war</packaging> 2.< ...
- 深入剖析PHP7内核源码(一)- PHP架构与生命周期
PHP7 为什么这么快? 全新的zval 更节约的空间,栈上分配内存 zend_string 存储字符串的Hash值,数组查询的时候不需要进行Hash计算 在HashTable桶内直接存数据,减少了内 ...
- IoT时代:Wi-Fi“配网”技术剖析总结
导读 近年来,物联网市场竞争激烈,从物联网平台厂商,设备生产商,到服务提供商,都在涌入这片红海.预计到2020年,全球联网设备数量将达到260亿个,年复合增长率达到20%:全球联网设备带来的数据将达到 ...
- Spark流式编程介绍 - 编程模型
来源Spark官方文档 http://spark.apache.org/docs/latest/structured-streaming-programming-guide.html#programm ...
- Greenplum数据库分享
1. 场景描述 最近做了次Greenplum数据库的分享,如下图,把第三章的的架构介绍简单提出来,分享下. 2. 解决方案 就按照ppt贴图了,部分内容稍微做了下马赛克. (这页ppt的下半部分,有实 ...
- Redis的常用命令与Java整合及高级应用篇
一,redis是什么? 首先数据库分为关系型数据库和非关系型数据库,关系型数据库是采用关系模型来组织数据的数据库,简单来说就是二维表格模型,同时保证事务的一致性. 相反非关系型数据库采用key ...
- hmac模块和hashlib模块
hmac模块和hashlib模块 一.hash是什么 hash是一种算法(Python3.版本里使用hashlib模块代替了md5模块和sha模块,主要提供 SHA1.SHA224.SHA256. ...
- idea打包报错
There is insufficient memory for the Java Runtime Environment to continue.# Native memory allocation ...