当你新到一家公司,安装配置完JDK、Maven后,一般情况下你需要修改settings.xml文件,比如你会修改本地仓库地址路径,比如你很可能会copy一段配置到你的settings.xml中(很可能就是私服的一些配置)。
IDEA(快捷键CTRL+Alt+A)进行Maven配置,然后在工程中的pom.xml文件进行开始添加标签来管理jar包(三要素 groupId、artfactId、version),在Maven规范的目录结构下进行编写代码,最后你会通过插件的方式来进行测试、打包、部署、运行。
私服、中央仓库配置看这篇(同一pom.xml中依赖加载顺序、版本问题),依赖传递、就近依赖
中央仓库:http://repo1.maven.org/maven2/,由Maven团队来维护,用户只可下载!
本地仓库依赖jar包的位置
本地仓库jar默认位置
要使用哪个版本,那么能不能不管如何依赖传递,怎样进行版本锁定呢?
使用<dependencyManagement>
这种主要用于子模块的版本一致性中、管理版本属性,dependency标签中引用${};
依赖传递中,如何去掉依赖?
使用<exclusions>标签,
将相关依赖排除
利用Maven 最近依赖策略,直接使用显式依赖指定版本,<dependency>标签
Maven工程结构
src/main下内容最终会打包到Jar/War中,而src/test下是测试内容,并不会打包进去。
src/main/resources中的资源文件会COPY至目标目录,这是Maven的默认生命周期中的一个规定动作。(hibernate/mybatis的映射XML需要放入resources下,而不能在放在其他地方了)
常用生命周期按钮
1、clean:有问题,多清理!
2、package:打成Jar or War包,会自动进行clean+compile
3、install:将本地工程Jar上传到本地仓库
4、deploy:上传到私服
生命周期与项目启动或者debug同时启动,会导致项目启动失败,加载不到***.class文件!!!
生命周期与项目启动或者debug同时启动,会导致项目启动失败,加载不到***.class文件!!!
生命周期与项目启动或者debug同时启动,会导致项目启动失败,加载不到***.class文件!!!