clean,install,package,deploy分别代表
大家好,我是IT修真院成都分院第8期的JAVA学员邹苏,一枚正直纯洁善良的java程序员。
今天给大家分享一下,修真院官网Java任务1,深度思考中的知识点————clean,install,package,deploy分别代表什么含义?
1.背景介绍
maven是什么?
首先,为什么有maven?构建是程序员每天要做的工作,而且相当长的时间花在了这上面,而maven使这系列的工作完全自动化。 我们一直在寻找避免重复的方法,设计的重复,文档的重复,编码的重复,构建的重复等,maven是跨平台的,最大的消除了构建的重复。
Maven是一个Java语言编写的开源项目管理工具,是Apache软件基金会的顶级项目。主要用于项目构建,依赖管理,项目信息管理。
2.知识剖析
Maven特点:
1. maven不仅是构建工具,它还是依赖管理工具和项目管理工具,提供了中央仓库,能够帮我们自动下载构件。
2.为了解决的依赖的增多,版本不一致,版本冲突,依赖臃肿等问题,它通过一个坐标系统来精确地定位每一个构件(artifact)。
3.还能帮助我们分散在各个角落的项目信息,包括项目描述,开发者列表,版本控制系统,许可证,缺陷管理系统地址。
4.maven还为全世界的java开发者提供了一个免费的中央仓库,在其中几乎可以找到任何的流行开源软件。通过衍生工具(Nexus),我们还能对其进行快速搜索
5.maven对于目录结构有要求,约定优于配置,用户在项目间切换就省去了学习成本。
Maven的一些基础命令:
1、Mvn compile
执行 mvn compile命令,完成编译操作,执行完毕后,会生成target目录,该目录中存放了编译后的字节码文件。
Mvn clean
执行 mvn clean命令执行完毕后,会将target目录删除。
Mvn test
执行 mvn test命令,完成单元测试操作执行完毕后,会在target目录中生成三个文件夹:surefire、surefire-reports(测试报告)、test-classes(测试的字节码文件)
Mvn package
执行 mvn package命令,完成打包操作执行完毕后,会在target目录中生成一个文件,该文件可以是jar、war等
Mvn install
执行 mvn install命令,完成将打好的jar包安装到本地仓库的操作执行完毕后,会在本地仓库中出现安装后的jar包,方便其他工程引用
Mvn deploy
将打好的包拷贝到远程的repository,使得其他的开发者或者工程可以共享。
3.常见问题
Maven中央仓库经常不稳定,下载速度慢
4.解决方案
pom文件中加入
也可以在settings中设置镜像
5.编码实战
6.扩展思考
怎么样能让Maven跳过JUnit?
pom文件中加入
7.参考文献
http://blog.csdn.net/woshixuye/article/details/8133050
https://www.cnblogs.com/fan-yuan/p/5008602.html
http://blog.csdn.net/iflow/article/details/46997315
PPT :PPT
腾讯视频:
undefined_腾讯视频
问答:
如何把第三方jar导入本地仓库?
使用命令行:
-Dfile=是jar包所在地方
加三个坐标
-DgroupId=
-DartifactId=
-Dversion=
如
mvn install:install-file -Dfile=d:/XXXXXX.jar -DgroupId=XXX.XX -DartifactId=sdk.java -Dversion=2.6.3 -Dpackaging=jar -DgeneratePom=true
如何deploy到远程仓库?
mvn deploy:deploy-file -DgroupId=xxx -DartifactId=xxx -Dversion=1.0-SNAPSHOT -Dpackaging=jar -Dfile=D:\xxx.jar - Durl=http://xxxxxx -DrepositoryId=thirdparty
几种方式能让Maven跳过JUnit?
2种
感谢大家观看!
今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~
技能树.IT修真院
“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,掌控自己学习的节奏,学习的路上不再迷茫”。
这里是技能树.IT修真院,成千上万的师兄在这里找到了自己的学习路线,学习透明化,成长可见化,师兄1对1免费指导。快来与我一起学习吧~
我的邀请码:17701057,或者你可以直接点击此链接:http://www.jnshu.com/login/1/17701057