【修真院java小课堂】clean,install,package,deploy分别代表什么含义?
大家好,我是IT修真院成都分院第12期学员,一枚正直善良的java程序员。
今天给大家分享一下,修真院官网java任务一中可能会使用到的知识点:
clean,install,package,deploy分别代表什么含义?
1. 背景介绍
要理解clean,install,package,deploy的含义,我们必须先认识maven。因为他们是maven中的命令。
Maven是什么?有什么用?怎么用?
2. 知识剖析
1. maven是什么?
Maven是一个项目构建和项目管理工具。
2. maven有什么用?
能够帮助使用者完成从清理,编译,测试,生成报告,打包和部署的一系列操作过程
maven标准化了项目的构建过程,有利于团队之间的协作。此外,maven可以有效的解决java项目中jar包依赖问题,解决由此带来的版本不一致等问题。maven还提供了一个免费的中央仓库,几乎可以找到任何开源类库。
3. 怎么用?
我们在开发项目的时候,不断地在进行编译、测试、打包、部署等过程,maven的生命周期就是对所有构建过程抽象与统一,生命周期包含项目的清理、初始化、编译、测试、打包、集成测试、验证、部署、站点生成等几乎所有的过程。Maven有三套相互独立的生命周期clean,install,package,deploy 属于maven项目的生命周期中的一部分。Maven有三套相互独立的生命周期:
1.CleanLifecycle 在进行真正的构建之前进行一些清理工作。
2.DefaultLifecycle 构建的核心部分,编译,测试,打包,部署等等。
3.SiteLifecycle 生成项目报告,站点,发布站点。如下图:
clean 清理项目生产的临时文件,一般是模块下的target目录
install 将打包的jar/war文件复制到你的本地仓库中,供其他模块使用
package项目打包工具,会在模块下的target目录生成jar或war等文件
deploy 将打包的文件发布到远程参考,提供其他人员进行下载依赖
3. 常见问题
3.1如何增加删除一个依赖关系?
3.2出现如如下报错:
-Dmaven.multiModuleProjectDirectory systempropery is not set. Check $M2_HOME environment variable and mvn scriptmatch.[ERROR] Maven execution terminated abnormally (exit code 1)
3.3 IDEA中进行maven install报:系统资源不足的问题
3.4 IDEA使用maven慢的问题
4. 解决方案
4.1如何增加删除一个依赖关系?
解决方案:直接在pom文件中加入一个dependency节点,如果要删除依赖,把对应的dependency节点删除即可。
4.2出现如3.2的报错:
解决方案:在runner下的run in backqround中加-Dmaven.multiModuleProjectDirectory=$M2_HOME
如下图:
4.3 IDEA中进行maven install报:系统资源不足的问题
解决方案:将maven install的jvm内存调的大一点,具体如下:在idea中选择File->Settings,接着将maven runner的jvm内存根据自己系统内存大小进行调大
如下图:
4.4 IDEA使用maven慢的问题
解决方案:
1.maven每次进行创建的时候回去网上下载artheType-catalog.xml,将artheType-catalog.xml文件下载到本体。
2.maven自带的仓库好像是国外的,访问起来比较慢,修改到国内仓库。
如下图:
添加了dependency之后jar包下载特别慢,这里就需要更改maven的仓库了,在IDEA的安装目录下找到./plugins/maven/lib/maven2/目录或者./plugins/maven/lib/maven3/目录,在该目录中的conf目录下有setting.xml修改该文件,在<mirrors>标签下添加如下仓库地址:
5. 编码实战
使用IDEA新建的maven项目
shi
6. 扩展思考
maven使用的命令操作
7. 参考文献
https://blog.csdn.net/yhj19920417/article/details/72627227
https://blog.csdn.net/moshenglv/article/details/52027106
CSDN上冰河winner 的博客
http://www.iteye.com/topic/973166
http://www.bubuko.com/infodetail-1415329.html
https://blog.csdn.net/zhuxinquan61/article/details/53725457
http://gqsunrise.iteye.com/blog/2401026
8. 更多讨论
maven默认的文件存放结构
/项目目录
· pom.xml 用于maven的配置文件
· /src 源代码目录
o /src/main 工程源代码目录
§ /src/main/java 工程java源代码目录
o /src/main/resource工程的资源目录
o /src/test 单元测试目录
§ /src/test/java
· /target 输出目录,所有的输出物都存放在这个目录下
o /target/classes 编译之后的class文件
【修真院java小课堂】clean,install,package,deploy分别代表什么含义?相关推荐
- 【修真院Java小课堂】Annotation注解
标题: [修真院Java小课堂]Annotation注解 开场语: 大家好,我是IT修真院西安分院第三期学员,一枚正直纯洁善良的JAVA程序员,今天给大家分享一下,修真院官网JAVA任务七,深度思考中 ...
- 【修真院java小课堂】ArrayList浅析
大家好,我是IT修真院郑州分院第8期学员,一枚正直善良的java程序员.今天给大家分享一下,修真院官网 java任务中可能会使用到的知识点: ArrayList浅析 width="640&q ...
- 【修真院JAVA小课堂】redis缓存集群简单介绍
大家好,我是IT修真院郑州分院第11期的JAVA学员,一枚正直纯洁善良的java程序员. 今天给大家分享一下,redis缓存集群简单介绍. 1.背景介绍 redis是一个key-value存储系统.和 ...
- 【修真院JAVA小课堂】什么是压测,为什么要进行压力测试?JMETER工具的使用
大家好,我是IT修真院郑州分院第11期的JAVA学员,一枚正直纯洁善良的java程序员. 今天给大家分享一下,什么是压测,为什么要进行压力测试?JMETER工具的使用. 1.背景介绍 压测,即压力测试 ...
- 【修真院Java小课堂】Tiles框架简单介绍
大家好,我是IT修真院上海分院第6期的学员,一枚正直纯洁善良的程序员 今天给大家分享一下,Tiles框架简单介绍 Tiles框架简单介绍 背景介绍 什么是Tiles Tiles 是一种JSP布局框架, ...
- 【修真院WEB小课堂】定时器有哪些用法?
这里是修真院前端小课堂,每篇分享文从 [背景介绍][知识剖析][常见问题][解决方案][编码实战][扩展思考][更多讨论][参考文献] 八个方面深度解析前端知识/技能,本篇分享的是: [定时器有哪些用 ...
- 【修真院pm小课堂】详谈用户体验五要素
[修真院pm小课堂]详谈用户体验五要素 用户体验五要素在产品的工作中经常听到,那么他究竟是什么呢?怎样去使用呢? 一.战略层 明确商业目标和用户目标,解决两者之间的冲突,找到平衡点,确定产品原则和定位 ...
- 【修真院web小课堂】请描述 BFC(Block Formatting Context) 及其如何工作
请描述 BFC(Block Formatting Context) 及其如何工作 小课堂[北京-WEB-A组] 分享人:要来点本子吗 大家好,我是IT修真院北京分院第35期的学员,一枚正直.纯洁.善良 ...
- 【修真院web小课堂】angular js常用指令 ng-blur、ng-change、ng-focus、ng-disabled是如何运用到表单验证中的?
大家好,我是IT修真院武汉分院web第16期的学员孟晨,一枚正直纯洁善良的web程序员 今天给大家分享一下,修真院官网js(职业)任务八,深度思考中的知识点--angular js常用指令 ng-bl ...
最新文章
- WCF 入门之旅(4): 怎样用客户端调用WCF服务
- eclipse修改默认工作空间
- class转java_java动态代理实现与原理详细分析
- 第七章 比高斯更快的计算
- asp数据分页显示技术(上下页版)
- insert转update工具_mysql binlog 分析工具
- VOS防止盗打及后门的安全策略
- python改变图片像素值大小_Python之修改图片像素值的方法
- charls https抓包
- Yolov5学习笔记(1)——训练出自己的模型
- CURLOPT_NOSIGNAL
- 三峡学院计算机调剂,重庆三峡学院2019考研调剂信息公告
- Excel公式与函数——每天学一个
- 中国货币供应量全球第一的反思
- javascript开发HTML5游戏--斗地主(单机模式part2)
- 零基础入门:实时音视频技术基础知识全面盘点
- (五)通过pygame搭建游戏框架
- HTML常见的处理文本的标签,比如说加粗啦、斜体啦等等等。。。
- Intel汇编-带符号乘法
- 《茶馆》再开张 这出戏濮存昕、冯远征演了20年
热门文章
- 汽车ELV报废车辆指令测试
- 模板字符串 `` + 简化对象写法
- android 界面大小设置在哪里,移动应用界面设计的尺寸设置及规范
- 真正的IT女是什么样子的?
- 状压搜索 Circling Round Treasures:CodeForces - 375C
- android studio 中配置groovy源码_麻省理工教程:使用Unity AR Foundation在AR中查看模型...
- eclipse java混淆打包,Android Studio和eclipse混淆打包总结
- 有时感觉自己很是虚伪
- Xshell登录进入CentOS 6.5系统后,Python交互模式和数据库模式下,出现乱码的问题及解决方法
- html如何让窗口不在任务栏显示,电脑最小化窗口后无法在任务栏中显示怎么解决...