您的位置:首页 > 房产 > 建筑 > 本地网站搭建工具_宁波人流网_北京搜索引擎优化经理_域名收录查询

本地网站搭建工具_宁波人流网_北京搜索引擎优化经理_域名收录查询

2025/1/1 11:33:25 来源:https://blog.csdn.net/2302_79981885/article/details/144171209  浏览:    关键词:本地网站搭建工具_宁波人流网_北京搜索引擎优化经理_域名收录查询
本地网站搭建工具_宁波人流网_北京搜索引擎优化经理_域名收录查询

前言

我们这一节讲一下Maven

1. 分模块开发的意义

在这里插入图片描述
同一个程序我们按功能划分为不同的模块
在这里插入图片描述
同一个模块导成jar之类的,这样就可以共享数据了

在这里插入图片描述

2. 分模块开发与设计

我们以原来的ssm整合的模块来考虑

在这里插入图片描述
我们来把domain这个模块搞消失,重新制造一个模块

在这里插入图片描述
我们先创建一个新模块

在这里插入图片描述
然后把上面那个模块里面的domain里面的内容复制过来
在这里插入图片描述
然后删掉原来springmvc模块里面的domain

在这里插入图片描述
然后把这两个模块合在一起操作

在配置文件中增加插件就可以了

pom.xml:

在这里插入图片描述
把domain的坐标搞过来就可以了

在这里插入图片描述这个是domain的坐标

在这里插入图片描述
在这里插入图片描述
这样我们就引进来了

然后就相当于我们有Book这个类了
在这里插入图片描述
但是我们会报错,为什么呢,因为我们下载资源的时候,是在本地资源下载的,而我们这个新导入的,本地仓库根本就没有这个坐标
所以我们要把新的maven模块打包放进本地仓库

在这里插入图片描述
这里就是我们的本地仓库

所以我们要用install来把当前模块安装到仓库中

在这里插入图片描述

点击这个
在这里插入图片描述
然后就安装成功了

我们把groupid改为com.itheima

我也不知道为什么会安装到这里,可能是原来安装Maven的时候没有设置好吧

然后我们还要把项目和每个模块的SDK都设置为17的版本,这么就可以了

在这里插入图片描述

我们的本地仓库是在这里的

在这里插入图片描述
我们点击compile编译

在这里插入图片描述

发现成功了,那么就没有问题了

所以就是导入坐标,把这个模块导入本地仓库就OK了

现在我们把dao拆出来

在这里插入图片描述

在这里插入图片描述

这里开始解决报错

我们在pom中引入pojo的坐标解决Book的问题

在这里插入图片描述

在这里插入图片描述

然后其他报红是mybatis相关坐标

我们导入就可以了

在这里插入图片描述

在这里插入图片描述

然后在springmvc模块中引入dao模块

在这里插入图片描述
在这里插入图片描述
compile一下就报错了,因为我们没有安装

在这里插入图片描述
安装一下dao模块到本地仓库中

在这里插入图片描述
在这里插入图片描述
而且也能用
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. 依赖传递

3.1 依赖传递

在这里插入图片描述
依赖就是我们导入的jar包,就是我们导入的坐标
在这里插入图片描述
这些就是依赖,有箭头的就表示这个依赖就依靠别的依赖
在这里插入图片描述
我们这里可以看出来,Maven2依赖Maven1,那么,我们可以在springmvc中删掉Mavenq1的坐标
在这里插入图片描述
这就是依赖传递性,你的依赖依赖了别人,那么你就可以直接使用别人
在这里插入图片描述

在这里插入图片描述
依赖冲突就是依赖的某个坐标版本不一样
在这里插入图片描述
在这里插入图片描述
同一个依赖写了多次,以最后配置的版本为准
这就是特殊优先
在这里插入图片描述
点击这个按钮,就可以看依赖的层级了

在这里插入图片描述

4 可选依赖与排除依赖

4.1 可选依赖

在这里插入图片描述

如何把这些依赖给隐藏掉呢,不给别人看
原:
在maven_02_dao中加上
在这里插入图片描述

            <optional>true</optional>

加上这一个就可以隐藏

原:
在这里插入图片描述
现在:

在这里插入图片描述
所以对应Book也不见了

这是什么意思呢,意思就是你对当前工程的某个资源进行依赖,把它隐藏后,对应资源将不具有依赖性

意思就是我们在dao中把pojo给optional选择true,那么这个pojo就不具有依赖传递了,意思就是pojo这个依赖只能在dao中用,因为这个没有传递,不能在springmvc中用了,因为不能传递了,改成false就是默认的值

但是我的可选依赖好像有问题,不能实现,所以上面的例子就不要看了

4.2 排除依赖

在这里插入图片描述
现在我们在dao中导入日志技术的坐标
我们要在springmvc中排除这个坐标
就是在springmvc中导入dao的时候,特定排除日志这个坐标
springmvc:

在这里插入图片描述
不需要写版本,因为排除的是排除这门技术

原:
在这里插入图片描述

有log4j

现在:
在这里插入图片描述
隐藏依赖是dao不给springmvc用
排除依赖是springmvc不用别人的

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

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

5. 聚合

在这里插入图片描述
就是我们一个模块发生变化,如果没有install的话,其他模块就跟着可能不能用了
在这里插入图片描述
所以我们来个管理员类,就是发生了变化,全部一起install
这就是聚合
在这里插入图片描述
在这里插入图片描述
他就是用来帮助我们做聚合的
在这里插入图片描述
所以它的打包方式也会发生变化

默认打包方式是jar
web工程打包方式是war
聚合打包是pom
在这里插入图片描述
现在开始说明它来管理三个模块

在这里插入图片描述
在这里插入图片描述
看得出来有结构了
我们再来执行compile

在这里插入图片描述
这样四个工程都参与构建了

注意构建的顺序是和依赖关系相关了,意思是先构建没有依赖的,在构建需要依赖的
在这里插入图片描述
在这里插入图片描述

6. 继承

在这里插入图片描述
有整体一样的依赖,也有部分一样的依赖,怎么简化呢
还有一个问题就是,修改一个依赖的版本号,能不能大家一起改呢

在这里插入图片描述
我们用00来作为父工程
其他的都是子工程
然后就是继承关系就是在子类中描述
springmvc_04:
在这里插入图片描述

所以我们现在把子工程里面的依赖全部都给父工程

然后就是父工程里面的依赖,如果不是每一个工程都需要的话,就删掉就可以了
比如dao,pojo
spring的东西大家都用
然后就差不多了
在这里插入图片描述
然后删除对应springmvc中继承的
在这里插入图片描述
就剩这么多了
这样的话,就都有依赖了
在这里插入图片描述

而且你把父工程版本改了,所以子工程都对应改了

那如果有两个子工程要junit,有一个不要改怎么搞呢

我们在00这里写上
在这里插入图片描述
写上定义依赖管理的话,springmvc那里就没有junit了()在这里插入图片描述

说一下,我们做的操作就是把springmvc中的junit剪切走,然后给到了依赖管理这里,定义在这里的就不是所有的都能继承了,如果你想用这个依赖的话,你要自己写才能用,这个就是依赖管理
然后springmvc中就要写上junit了,但是不能写上版本
springmvc_04:
在这里插入图片描述
不用写版本,因为版本就是父工程中的版本,你写了就用的是自己的版本了
这样就有了,但是dao没有,这就成功了

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

7. 属性

在这里插入图片描述

我们看这个,我们全是5.1.9的版本,如何改一个版本,全部跟着走呢
主要是怕漏改了
其实我们可以定义一个变量,那么只需要改这个变量就可以了

在这里插入图片描述

我们去维护父工程

在这里插入图片描述
我们在properties那里增加一个 <spring.version>5.2.10.RELEASE</spring.version>
就可以维护了,就可以设置属性了

在这里插入图片描述

这样改一下就可以了

在这里插入图片描述

在增加一个junit

在这里插入图片描述

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

8. 配置文件加载属性

在这里插入图片描述

就是说我们能不能把这里的内容也加载为属性,统一管理

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

在这里插入图片描述
就这样就行了吗,这是不行的,我们在pom文件设置的属性,就只能在pom文件中用,所以必须扩大Maven的控制范围

我们用build来构建设定

在这里插入图片描述
resources就是用来配置资源文件的,directory是资源文件的目录
第二个就是开启过滤规则,让它能够识别${}这种符号
在这里插入图片描述
这就让我们指定的文件可以去解析{}的属性了

但是这样配置还是不能用的

因为这样是找不到的,因为是根据相对路径来找的
在这里插入图片描述

这样写也不太好,因为万一其他地方也有这个配置文件呢,我们也要调用呢

在这里插入图片描述
这个${project.basedir}表示这个项目所在的目录,所以这样写就可以了

在这里插入图片描述
我们在改成locallhost的就可以正常运行了

所以没什么问题

8.1 补充

我们的maven项目要打包的话,必须要有web,xml这个文件才行(有就行了),不用管里面内容,现在我们来演示一下不用web.xml打包的方式

我们导入plugin

在这里插入图片描述
这样写就可以了
这个第八的内容并不是很主流,了解即可
在这里插入图片描述
project.basedir这个东西属于内置属性

在这里插入图片描述

9. 版本管理

在这里插入图片描述

10. 多环境开发

从这一节开始就比较实用了

在这里插入图片描述
在这里插入图片描述
我们先把三种环境定义出来

在这里插入图片描述
我们把原来写的jdbc.url给注释掉

在这里插入图片描述
这样写就表示jdbc.url这个属性属于env_dep这个环境

在这里插入图片描述
然后我们在install一下,然后去maven里面去看生效没有

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
这里就是war包了

反正默认环境设置的哪个,我们这里运行的就是那个

但我们还以为让它根据我们的指令来选择对应环境

在这里插入图片描述
这个可以执行maven指令

在这里插入图片描述
-p的意思是指定环境,后面跟环境

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

11. 跳过测试

在这里插入图片描述
我们点package,上面的就是测试

就是在打包前会测试,会走测试用例,万一测试有问题,那么就不能测试了

在这里插入图片描述
我们点击这个按钮,就可以跳过测试了,并且test变灰了

我也可以指定跳过测试,这是一个插件,还是写在plugin中

在这里插入图片描述
这个就和上面我们点的按钮是一样的效果了

这样打包的时候就没有测试了

现在开始写指定跳过某些测试

在这里插入图片描述

这样的话就是BookServiceTest.java不测试
在这里插入图片描述

这样就跳过测试了

在这里插入图片描述
指令这样写也代表着跳过测试

12. 私服简介与安装

就是我们做的东西在小组之间共享,这个就是私服来实现

在这里插入图片描述
一个新的服务器,可以放我们的东西,互联网上的,大家都能用的就是中央

在这里插入图片描述

先下载私服

在这里插入图片描述

下载这个就可以了

然后我直接在资料里面安装就可以了

在这里插入图片描述
就是第一个

在这里插入图片描述
这两个都需要

在这里插入图片描述
我们先看第一个

在这里插入图片描述
lib里面有jar包
进去bin
在这里插入图片描述
这里就是启动程序
这两个大文件都不能少的
怎么用呢

在这里插入图片描述
我们在上面敲cmd指令

在这里插入图片描述
然后输入指令

在这里插入图片描述
在这里插入图片描述
但是我们运行直接出错了,这是因为目录下面有中文,我们放在soft文件夹下继续试一下

在这里插入图片描述
这也是一个服务器,和tomcat一模一样

在这里插入图片描述
这下我们就要在浏览器上访问了

我们直接输入http://localhost:8081/

在这里插入图片描述
然后点击右上角的登录按钮

在这里插入图片描述
这个的意思就是用户名叫做admin,密码在这个路径中

我们去找一下

在这里插入图片描述
就是这个

在这里插入图片描述
在这里插入图片描述
然后登录

在这里插入图片描述
设置新密码

在这里插入图片描述
允许匿名访问

在这里插入图片描述
在这里插入图片描述
这个是浏览使用
在这里插入图片描述
这个是设置使用

在这里插入图片描述
在这里插入图片描述
这个是启动配置

在这里插入图片描述
这里面比如就可以改端口8081

13. 私服仓库分类

私服也有自己的仓库,我们放东西就是放在这个仓库里面
我们一组的人都从这里面拿东西

但是我们如果要去第三方拿资源,还要访问第三方,还是挺麻烦的,所以我们直接在私服里面创建一个仓库,这个仓库直接拷贝了中央仓库,所以我们就可以只访问私服了

我们的仓库有很多个,有是临时版的,有已经打包好的,有中央仓库,这些统一弄为一个仓库组

在这里插入图片描述
在这里插入图片描述
第三方资源就是中央仓库没有的资源

宿主仓库就是我们自己用的,代理仓库就是转递中央仓库

仓库组是小组类共享用的
宿主仓库是小组内自己用的
代理仓库是所有项目组都能用的

14. 本地仓库访问私服配置

在这里插入图片描述
这组设置是本地文件的设置

在这里插入图片描述
就是放在这里的

先配置本地仓库对私服的访问权限
在这里插入图片描述

在这里插入图片描述
但是这才是我们maven的仓库与配置
我我们来改一下

在这里插入图片描述
这样就OK了,很完美,改了配置文件,也改了本地仓库

在这里插入图片描述

然后我们找到配置文件的servers

在这里插入图片描述
然后我们去私服找id

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

我们先来创建我们专用的仓库

点那个create
在这里插入图片描述
选这个类别

在这里插入图片描述
然后直接创建

在这里插入图片描述
在这里插入图片描述
其实id就是那个仓库名

在这里插入图片描述

然后还要告诉私服的url

就是映射

在这里插入图片描述
就是这个

在这里插入图片描述
我们点入maven-public这个仓库
其实name:maven-public就是我们仓库组的id
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这个区域表示的是,这个仓库管理的多少个仓库

然后我们把我们自定义的仓库拖到右边

在这里插入图片描述
然后save保存

在这里插入图片描述
在这里插入图片描述
这里的url就是地址

在这里插入图片描述
有了这两个东西,我们的本地仓库就可以和私服打交道了

15. 私服资源上传与下载

在这里插入图片描述
注意只有install的时候,只有打包的时候,我们本地应该才会有这些

然后我们要把这四个上传到私服中,要放在哪个仓库中,这个怎么告诉?
所以接下来这个配置要配置到我们的工程里面来,而不是本地仓库了

maven_00_parent:

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

这个就是id,url就在下面的下面

在这里插入图片描述

在这里插入图片描述
现在开始发布它

我们先看看私服里面有什么东西
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点进去就可以看到里面的东西了

在这里插入图片描述
啥也没有

发布到私服中我们就要用指令了
在这里插入图片描述

install是把工程打包放在本地
deploy就是发布到私服了

我们第一次操作的时候会下载很多东西

在这里插入图片描述
但是我们这个出错了

在这里插入图片描述
但是我们在发布pojo的时候出错了

因为pojo没有继承父工程

在这里插入图片描述
注意要把原来我们写的setting.xml文件修改保存一下
然后deploy一下

在这里插入图片描述
这样我们就成功了

在这里插入图片描述
这样我们里面就有东西了

snashot里面有东西
在这里插入图片描述
但是release里面没有

在这里插入图片描述

为什么呢,因为我们工程的发布版本号叫做snapshot

在这里插入图片描述
我们四个都改成release

继承父类的也写成release
在这里插入图片描述
这样就有了

我们怎么配置资源从阿里的地方镜像过来呢

在这里插入图片描述
找到maven-central这个仓库

在这里插入图片描述
它连的就是远程的仓库,换成阿里的就可以了
在这里插入图片描述
换这个就可以了
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

总结

maven我们就讲完了,后面我们开始讲springboot

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com