转载

公司来了一个low逼程序员

某天你新入职一家公司,领导说第一件事,你先把自己的环境搭建好吧。

于是你装了JDK,装好maven,装好IDEA开发环境,导入工程和项目,然而发现 整个工程一片飘红,jar包冲突,项目path不对,maven包找不到依赖。

各类问题纷至沓来,半天时间过去了,你满头大汗,项目还是不能启动?怎么办?身边陌生的同事不时投来询问的目光,仿佛在说,“ 来了一个low逼,一个开发环境都不会搞 公司来了一个low逼程序员 ”。

这是我第一天去上班的情景,怎么样,你是否似曾相识?那问题来了,我们到底是哪里功力不到呢?这就是今天要说的,当今java项目的基石---Maven,那么关于Maven,我们要了解哪些呢?都在下面:

关于Maven 我们需要知道:

1、 本地仓库?Maven到底有哪些仓库?它们什么关系?

公司来了一个low逼程序员

M aven仓库

本地仓库路径配置

2、 关于<dependency>的使用

公司来了一个low逼程序员

依赖管理

3、 Maven为什么会出现依赖冲突?如何处理依赖冲突?

4、 引入依赖的最佳实践,提前发现问题!

在工程中,我们避免不了需要加一些依赖,也许加了依赖后运行时才发现存在依赖冲突再去解决,似乎有点晚!那么能不能提前发现问题呢?

如果我们新加入一个依赖的话,那么先通过mvn dependency:tree命令形成依赖树,看看我们新加入的依赖,是否存在传递依赖,传递依赖中是否和依赖树中的版本存在冲突,如果存在多个版本冲突,利用上文的方式进行解决!

5、Maven规范化目录结构

公司来了一个low逼程序员

6、Maven的生命周期

公司来了一个low逼程序员

Maven 生命周期

我们只需要注意一点: 执行后面的命令时,前面的命令自动得到执行。

实际上,我们最常用的就是这么几个:

clean: 有问题,多清理!

package: 打成Jar or War包,会自动进行clean+compile

install: 将本地工程Jar上传到本地仓库

deploy: 上传到私服

7、关于scope依赖范围

8、不同环境使用不同配置:Profile+Filter

9、多模块开发:继承与聚合

10、私服

私服,我们对其的印象,就如上图所示。其实在日常中,我们对于私服的操作主要在于:

第一:可以搜索依赖坐标得到XML片段; 

第二:deploy 依赖到私服以及从私服下载依赖;

私服仓库类型:

group:一个仓库组,说白了,就是几个仓库的集合。

hosted:宿主仓库,存储公司内部开发的jar,分为Releases/Snapshots。

proxy:用于代理中央仓库。

在互联网项目开发中,尤其Java板块,Maven十分常见。Maven的仓库管理、依赖管理、继承和聚合等特性为项目的构建提供了一整套完善的解决方案。如果你不懂Maven,遇到多模块的项目,依赖冲突就会让你 (被水淹没) 不知所措,甚至搞不懂项目的运行原理。你有没有被Maven“伤害”过?今天,我们的口号就是: 4小时搞定Maven!

公司来了一个low逼程序员

想搞定Maven,那就扫扫这个二维码吧 公司来了一个low逼程序员

Peter 老师

前阿里 高级架构师

系统架构师及微服务之先驱,JEECG极速开发框架的设计与布道者;

专精领域: 微服务设计与编排、高并发架构设计与重构、国内外前沿开源技术封装及引进等。

课程内容

Maven不得不知道的那些事

☞轻轻松松装Maven;

☞各类配置全扫盲;

☞正本清源讲Maven生命周期的来龙去脉;

Maven各类plugin与生命周期的绑定与使用套路;

手把手教你写Maven插件;

Maven进阶实战,再上一层楼

Maven的仓库依赖机制解析;

Maven私服轻松搭建;

使用私服代理你的项目依赖;

统一定制你自己企业项目结构;

原价199、299,现在统统只要1毛钱! 公司来了一个low逼程序员

公司来了一个low逼程序员

发送暗号“ 666 ” 添加小姐姐微信吧

你点的每个“在看”,我都认真当成了喜欢

原文  http://mp.weixin.qq.com/s?__biz=MzIwNTc4NTEwOQ==&mid=2247487333&idx=1&sn=ab1996a6dda81626c54b885acb12d3bf
正文到此结束
Loading...