系列文章目录
文章目录
- 系列文章目录
- Why、What、How 学习所有的知识都应该问一问自己这几个问题
- why
- what
- 编译,部署,运行
- 自动化构建
- Maven的九个基本概念
- How
- Maven的安装
- Maven配置本地仓库是啥意思
- 修改Maven的仓库路径
- 修改下载jar包的地址(中央仓库是全世界一起用的,访问较慢)
- 修改Maven创建项目时引入的jdk版本
Why、What、How 学习所有的知识都应该问一问自己这几个问题
why
我们任何知识都可以自己总结
springMvc一句话
在表现层处理客户端发过来的请求
比如spring 就三句话
1、AOP和IOC
2、管理代码中的bean和生命周期
3、做代码的解耦合
直接看这个文档和视频,这里的笔记只做一些补充
说白了,为什么要使用Maven,其实就是 jar包大家一起共享,跟我们优化代码的时候一样,把公共的部分抽取出来
根据文档我们可以得知,Maven一定会有一个本地仓库,用来存储我们的jar包
我们想一个问题,如果我们把这个存储jar包的本地仓库移走或者删除,项目还能够正常运行吗?
答案是肯定不能正常运行了,很好理解,以前我们是把jar包放在lib目录下,你把lib目录下的jar包删掉项目肯定不能运行了
Maven也是一样的,它只是代替了以前我们放在lib目录下的操作
使用Maven的时候连着外网,你缺少什么包,Maven会自动帮你下载
这样就不需要你自己去下载了
jar包少的时候,他们之间的依赖关系你还记得住,但是如果是一个大型项目,一二百个jar根本是记不住的
而且也没有必要去浪费在记忆jar包之间的依赖关系上去
直接用Maven就可以自动帮我们解决这个问题
人为的管理jar包冲突也是很头疼的,所以同理,我们也是让Maven自动帮我们处理
为什么要拆分?因为后面的大部分项目都是分布式的项目,分布式的系统不可能吧所有的功能都写在一个项目里
分布式项目里面会分模块开发
what
编译,部署,运行
但是这个操作工具都会帮我们做好,所以工具用多了有时候我们就不太懂原理了,自己都不会部署了,这个也是需要注意的地方
其实是可以改的,我们在新建一个动态web工程的时候
点完下一步的时候,注意这里是让你选择的
自动化构建
在2019年以前或者很早之前,我们是要写大量的单元测试程序的
现在不需要了
因为现在的项目周期都比较短,时间比较赶,所以很多单元测试能不做的就不做了
打包的概念这里也普及一下
java项目打的包叫jar包
web项目打的包叫war包
Maven优先从本地仓库里面找,本地仓库找不到就会去中央仓库下载到本地仓库来(联网状态下)
Maven的九个基本概念
How
Maven的安装
【具体安装前面已经讲过,这里不再赘述,可以翻阅前面的文章】
Maven配置本地仓库是啥意思
安装完成之后我们还需要做一件事情,那就是搬家
强烈 不建议放C盘,C盘是系统盘,数据不安全
所以我们需要改
这个文件夹名字(Maven仓库的名字)尽量永远不要去改名字,因为一改的话,所有的项目都会受影响
修改Maven的仓库路径
还有可能需要修改的地方
如果都从中央仓库去下载会很慢,所以在公司中一般会有统一的下载地址
修改下载jar包的地址(中央仓库是全世界一起用的,访问较慢)
我们国内一般使用阿里的镜像服务器
直接复制:
alimaven
central
aliyun maven
http://maven.aliyun.com/nexus/content/groups/public
注意这个镜像服务器是可以配置多个的
虽然我们配置阿里云服务器就够了,一个一般足够了,这里只是说一下原理
参考配置文件在这自行查看
修改Maven创建项目时引入的jdk版本
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
注意上面我写错了,应该是如果你不配置的话Maven默认就会把你当做配置了jdk1.5
千万别配置错,配置错可能会导致Maven起不来
支持Maven配置全部完毕参考文件