Maven|高级-创新互联

成都创新互联公司主营垦利网站建设的网络公司,主营网站建设方案,APP应用开发,垦利h5微信平台小程序开发搭建,垦利网站营销推广欢迎垦利等地区企业咨询知识目录
    • 一、分模块开发
      • 1.1 分模块开发的意义
      • 1.2 分模块开发与设计
    • 二、依赖管理
      • 2.1 依赖传递
      • 2.2 可选依赖和排除依赖
    • 三、继承与聚合
      • 3.1 聚合
      • 3.2 继承(依赖继承)
    • 四、属性
      • 4.1 使用属性
      • 4.2 配置文件加载属性
      • 4.3 版本管理
    • 五、多环境开发和跳过测试
      • 5.1 多环境开发
      • 5.2 跳过测试
    • 六、游戏
      • 6.1 游戏简介和安装
      • 6.2 游戏仓库
      • 6.3 本地仓库配置游戏
      • 6.4 游戏资源上传和下载

一、分模块开发 1.1 分模块开发的意义

将原始模块按照功能拆分成若干个子模块,方便模块间的相互调用,接口共享。
分模块开发

1.2 分模块开发与设计

分模块开发代码设计步骤如下,目的是将bean层和mapper层从原模块中分离出来,变成两个新的模块。
(1)新建2个maven模块
在这里插入图片描述
(2)书写模块代码
分模块开发需要先对模块功能进行设计,再进行编码。不会先将工程开发完毕,再进行拆分。
这里的模块代码主要是Book实体类和BookMapper接口,如上图。
(3)通过maven-install指令将模块安装到本地
在这里插入图片描述
(4)在模块中引入分模块

org.itxiaoguomaven_11.0-SNAPSHOTorg.itxiaoguomaven_21.0-SNAPSHOT

至此,多模块协同开发搭建完毕。

二、依赖管理 2.1 依赖传递

(1)依赖具有传递性,比如A依赖B,B依赖C,那么A依赖C,B称为直接依赖,C称为间接依赖。依赖优先级:

路径优先声明优先特殊优先
当相同依赖在不同层级时,以层级低的为准当相同依赖在相同层级时(不同pom.xml),以配置顺序靠前的为准当相同依赖的不同版本在同一个pom.xml中配置了,以最后一次配置的为准

依赖传递

2.2 可选依赖和排除依赖
可选依赖排除依赖
在当前模块可用,不能向下传递。如自己写的依赖提供给别人使用时有但不需要使用该依赖时,排除依赖,不需要写版本号。如当发现一个jar包的东西不好用时可以排除
javax.servletjavax.servlet-api4.0.1true
org.itxiaoguomaven_11.0-SNAPSHOT  javax.servlet javax.servlet-api 
三、继承与聚合 3.1 聚合

聚合是指用将多个模块组织成一个整体,从而达到同时进行项目构建,这个管理工程称为聚合工程,下面介绍如何进行聚合工程开发。
在这里插入图片描述

pom../SSM_1../maven_2../maven_1

当交换module书写顺序后,再次编译:
在这里插入图片描述

3.2 继承(依赖继承)

子工程可以继承父工程(通常是聚合工程)的配置信息,最常见的是依赖关系继承。作用是简化开发,减少依赖版本冲突。

org.mybatismybatis3.5.5mysqlmysql-connector-java8.0.24 junit junit 4.13 test
org.itxiaoguomaven_parent1.0-SNAPSHOT../maven_parent/pom.xml

继承可选继承依赖

类型聚合继承
作用快速构建项目快速配置项目
相同pom文件打包方式为pom属于设计型模块,无实际功能
不同在当前模块配置聚合关系,模块可以感知到子模块在子模块中继承,父工程无法知道哪些工程继承了自己
四、属性 4.1 使用属性

一般在聚合工程中,在properties标签下以标签形式自定义属性,使用属性可以解决多个版本号一致时修改不方便的问题,将版本号定义成变量引用。

14145.2.10.RELEASE

子工程使用属性

org.springframeworkspring-webmvc${spring.webmvc}
4.2 配置文件加载属性 4.3 版本管理
工程版本发布版本
包括SNAPSHOT快照版本和RELEASE发行版本。包括alpha,纯数字和beta版本。

在这里插入图片描述

五、多环境开发和跳过测试 5.1 多环境开发

多环境
(1)使用profiles标签定义多个不同的环境并设置默认环境

env_dep  jdbc:mysql://localhost:3306/testenv_pro jdbc:mysql://127.1.1.1:3306/test trueenv_test jdbc:mysql://127.3.3.2:3306/test

(2)使用命令选择执行环境
在这里插入图片描述
在这里插入图片描述

5.2 跳过测试

(1)跳过全部测试
使用maven工具:
跳过
点击图中的闪电按钮之后,执行maven指令即可跳过测试。
使用mvn命令:
在这里插入图片描述
在pom文件中配置测试插件:

 org.apache.maven.plugins maven-surefire-plugin 2.12.4  true 

(2)跳过一部分不测试

 org.apache.maven.plugins maven-surefire-plugin 2.12.4   true  **/BookServiceImplTest.java 
六、游戏 6.1 游戏简介和安装

1.游戏是什么

游戏是一个特殊的远程仓库,它是架构在局域网内的仓库服务,供局域网内的开发人员使用。当Maven需要下载构建的使用,它先从游戏请求,如果游戏没有的话,则从外部的远程仓库下载,然后缓存在游戏上,再为Maven的下载请求提供服务。

在这里插入图片描述
2.游戏的作用

  • 内网访问,节省外网带宽。
  • 一次外网下载,内网所有用户就可以只下载游戏缓存,加速Maven项目构建。
  • 不被外部访问,更加安全。
  • 减少外部网络因素,更加稳定。
  • 方便内部项目服务的依赖引用,而不需要其他项目的完整源代码。

3.Nexus下载使用
Nexus是一个仓库管理器,通过Nexus来搭建Maven的游戏。
步骤:
(1)下载游戏
官网下载地址,但是一般进不去,访问速度太慢了,这里提供百度网盘下载地址,无风险。

(2)启动Nexus并使用浏览器访问


在这里插入图片描述
在这里插入图片描述


修改端口,默认端口是8081
在这里插入图片描述

6.2 游戏仓库

6.3 本地仓库配置游戏

游戏
(1)在Nexus存储管理器上新建两个maven仓库,并加入到maven-public仓库组中。




(2)修改Maven的setting.xml文件

6.4 游戏资源上传和下载
org.examplemaven_41.0-SNAPSHOT
itxiaoguo-releasehttp://localhost:8081/repository/itxiaoguo-release/itxiaoguo-Snapshothttp://localhost:8081/repository/itxiaoguo-Snapshot/

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


本文标题:Maven|高级-创新互联
网址分享:http://myzitong.com/article/hoice.html