分模块开发意义
我们先创建一个模块并设计相应的内容,pom文件中会有该模块的信息
然后运用maven的install运行,下载该模块的jar到本地仓库
然后需要用到该模块的时候 我们在另一个模块的pom中导入创建的模块坐标就可以了
依赖管理
依赖具有传递性
直接依赖:在当前项目中通过依赖配置建立的依赖关系
间接依赖:被资源的资源如果依赖其他资源,当前项目间接依赖其他资源
依赖传递冲突问题
路径优先:当依赖中出现相同的资源时,层级越深,优先级越低,层级越浅,优先级越高
声明优先:当资源在相同层级被依赖时,配置顺序靠前的覆盖配置顺序靠后的
特殊优先:当同级配置了相同资源的不同版本,后配置的覆盖先配置的
其实maven依赖列表展示的版本,就是正在使用的版本
可选依赖
当设置为true的时候,就对外隐藏了,也就是不具有依赖传递性了
排除依赖
也就是不需要指定版本
如果用别人的模块,那么排除依赖用的多。如果给别人用,那么可选依赖比较多
聚合
继承
这部分的依赖,子工程会直接沿用,不需要配置就有
这部分里的依赖,是子工程可以选择是否使用的依赖
属性
偶尔会用:
${project.basedir}代表当前项目名称,对于每个调用者都有用
当我们没有web.xml时,打包会报错,所以我们可以直接建一个web.xml或者使用插件忽略web.xml的检查:
版本管理
多环境配置和应用
多环境开发
跳过测试(了解)
在IDEA的maven模块中可以直接点按钮切换跳过测试模式
但是我们要细粒度控制,就要写响应的配置
私服
私服是一台独立的服务器,用于解决团队内部的资源共享与资源同步问题
在bin目录下运行cmd ,输入命令行nexus.exe /run nexus
然后访问服务器8081
右上角点登录,会提示密码所在的地址,然后找到后输入密码,重设新密码就可以了
私服资源操作流程分析
代理仓库 所有项目组公用
仓库组是小组内共享用
素组仓库是小组内自己使用
将地址换成阿里的中央服务器就可以了