编码规约 + Maven
2019-07-04 本文已影响0人
bernierayxu
1. 如何使用阿里巴巴的规约?
答:使用plugin搜索alibaba即可
2. 什么是maven?
maven3.如何通过命令行创建maven项目?
maven项目4. maven常用的构建命令是什么?
构建命令5. jar包的坐标概念是指?
答:如同空间坐标概念一样,jar包的坐标概念是指<groupId, artifactId, version>
坐标
6. jar包的仓库概念是什么?
答:指jar包compile之后是否存放在本地,还是上传到官方池中。
7. pom.xml是什么内容?
基本信息依赖信息
插件信息
8. maven的依赖范围是什么?
答:其中provided很重要,如果原有的环境中已经有对应的jar包依赖,就不需要再引入了,此时填写provided即可,否则会有冲突
maven
9. maven的依赖传递?
依赖传递10. 依赖冲突是什么?
答:是因为依赖传递导致的,两个不同的jar包依赖同一个jar包的不同的版本,因此就导致依赖冲突。解决方案:
- 自己调节原则:先声明优先,代表在pom里面的jar包位置越靠前就越优先,如果路径越短,其jar包的version的优先级就会提高。
- 依赖排除,靠自己声明哪些包的版本不需要引入。
-
通过dependencyManagement,可以将版本锁定在某个版本。
依赖冲突
11. maven生命周期是什么样的?
答:maven的生命周期分为三个阶段,第一个阶段是clean lifecycle(清理项目),第二个阶段是default lifecycle(构建项目),site lifecycle(生成项目站点);三个生命周期相互独立,但是如果做其中一个生命周期的一个动作,该生命周期的所有动作都会做。每个生命周期都是通过插件的形式来完成的。
生命周期
第一个阶段/第二个阶段 第三个阶段
插件管理
12. maven的聚合/继承是什么?
答:用一条编译命令就可以同时编译多个项目,例如创建一个ssm-parent作为父项目(project),然后ssm-service/ssm-dao/ssm-web作为继承的子模块(module)。
maven聚合
maven继承
13. 如何搭建私服仓库?
答:需要维护一个私人仓库,用于内部分发;有时候公司只有内网,没有外网可以访问,此时需要一个proxy(私服)来作为跳板访问外部的jar。其中hosted代表本地仓库,proxy代表远程仓库,group代表两者兼有。如果要上传下载的话,需要添加repositories作为私服的地址。还可以使用settings.xml来配置maven,使得每次使用maven的时候都可以直接通过配置来更新。
安装1
安装2 私服
14. maven的脚手架开发是什么样的?
答:相当于一个模板,可以快速开发。
maven脚手架
脚手架生成方式
从现有项目生成脚手架