新开河街网站建设公司,网站优化seo网站架构优化,wordpress全站链接,营销最好的网站建设公司Maven高级-私服6#xff0c;私服6.1 私服简介6.2 私服安装步骤1:下载解压步骤2:启动Nexus步骤3:浏览器访问步骤4:首次登录重置密码6.3 私服仓库分类6.4 本地仓库访问私服配置步骤1:私服上配置仓库步骤2:配置本地Maven对私服的访问权限步骤3:配置私服的访问路径6.5 私服资源上传…
Maven高级-私服6私服6.1 私服简介6.2 私服安装步骤1:下载解压步骤2:启动Nexus步骤3:浏览器访问步骤4:首次登录重置密码6.3 私服仓库分类6.4 本地仓库访问私服配置步骤1:私服上配置仓库步骤2:配置本地Maven对私服的访问权限步骤3:配置私服的访问路径6.5 私服资源上传与下载步骤1:配置工程上传私服的具体位置步骤2:发布资源到私服目标 了解Maven的私服 6私服
这一节我们主要学习的内容是:
私服简介私服仓库分类资源上传与下载
首先来说一说什么是私服? 6.1 私服简介
团队开发现状分析 (1)张三负责ssm_crm的开发自己写了一个ssm_pojo模块要想使用直接将ssm_pojo安装到本地仓库即可
(2)李四负责ssm_order的开发需要用到张三所写的ssm_pojo模块这个时候如何将张三写的ssm_pojo模块交给李四呢?
(3)如果直接拷贝那么团队之间的jar包管理会非常混乱而且容器出错这个时候我们就想能不能将写好的项目上传到中央仓库谁想用就直接联网下载即可
(4)Maven的中央仓库不允许私人上传自己的jar包,那么我们就得换种思路自己搭建一个类似于中央仓库的东西把自己的内容上传上去其他人就可以从上面下载jar包使用
(5)这个类似于中央仓库的东西就是我们接下来要学习的私服
所以到这就有两个概念一个是私服一个是中央仓库
私服:公司内部搭建的用于存储Maven资源的服务器
远程仓库:Maven开发团队维护的用于存储Maven资源的服务器
所以说:
私服是一台独立的服务器用于解决团队内部的资源共享与资源同步问题
搭建Maven私服的方式有很多我们来介绍其中一种使用量比较大的实现方式:
Nexus Sonatype公司的一款maven私服产品下载地址https://help.sonatype.com/repomanager3/download 6.2 私服安装 步骤1:下载解压
将资料\latest-win64.zip解压到一个空目录下。 步骤2:启动Nexus 使用cmd进入到解压目录下的nexus-3.30.1-01\bin,执行如下命令:
nexus.exe /run nexus看到如下内容说明启动成功。 步骤3:浏览器访问
访问地址为:
http://localhost:8081步骤4:首次登录重置密码 输入用户名和密码进行登录登录成功后出现如下页面 点击下一步需要重新输入新密码为了和后面的保持一致密码修改为admin 设置是否运行匿名访问 点击完成 至此私服就已经安装成功。如果要想修改一些基础配置信息可以使用:
修改基础配置信息 安装路径下etc目录中nexus-default.properties文件保存有nexus基础配置信息例如默认访问端口。 修改服务器运行配置信息 安装路径下bin目录中nexus.vmoptions文件保存有nexus服务器启动对应的配置信息例如默认占用内存空间。 6.3 私服仓库分类
私服资源操作流程分析: (1)在没有私服的情况下我们自己创建的服务都是安装在Maven的本地仓库中
(2)私服中也有仓库我们要把自己的资源上传到私服最终也是放在私服的仓库中
(3)其他人要想使用你所上传的资源就需要从私服的仓库中获取
(4)当我们要使用的资源不是自己写的是远程中央仓库有的第三方jar包这个时候就需要从远程中央仓库下载每个开发者都去远程中央仓库下速度比较慢(中央仓库服务器在国外)
(5)私服就再准备一个仓库用来专门存储从远程中央仓库下载的第三方jar包第一次访问没有就会去远程中央仓库下载下次再访问就直接走私服下载
(6)前面在介绍版本管理的时候提到过有SNAPSHOT和RELEASE如果把这两类的都放到同一个仓库比较混乱所以私服就把这两个种jar包放入不同的仓库
(7)上面我们已经介绍了有三种仓库一种是存放SNAPSHOT的一种是存放RELEASE还有一种是存放从远程仓库下载的第三方jar包那么我们在获取资源的时候要从哪个仓库种获取呢?
(8)为了方便获取我们将所有的仓库编成一个组我们只需要访问仓库组去获取资源。
所有私服仓库总共分为三大类:
宿主仓库hosted
保存无法从中央仓库获取的资源 自主研发第三方非开源项目,比如Oracle,因为是付费产品所以中央仓库没有
代理仓库proxy
代理远程仓库通过nexus访问其他公共仓库例如中央仓库
仓库组group
将若干个仓库组成一个群组简化配置仓库组不能保存资源属于设计型仓库 6.4 本地仓库访问私服配置
我们通过IDEA将开发的模块上传到私服中间是要经过本地Maven的本地Maven需要知道私服的访问地址以及私服访问的用户名和密码私服中的仓库很多Maven最终要把资源上传到哪个仓库?Maven下载的时候又需要携带用户名和密码到私服上找对应的仓库组进行下载然后再给IDEA 上面所说的这些内容我们需要在本地Maven的配置文件settings.xml中进行配置。 步骤1:私服上配置仓库 说明:
第56步骤是创建itheima-snapshot仓库
第78步骤是创建itheima-release仓库 步骤2:配置本地Maven对私服的访问权限
serversserveriditheima-snapshot/idusernameadmin/usernamepasswordadmin/password/serverserveriditheima-release/idusernameadmin/usernamepasswordadmin/password/server
/servers步骤3:配置私服的访问路径
mirrorsmirror!--配置仓库组的ID--idmaven-public/id!--*代表所有内容都从私服获取--mirrorOf*/mirrorOf!--私服仓库组maven-public的访问路径--urlhttp://localhost:8081/repository/maven-public//url/mirror
/mirrors为了避免阿里云Maven私服地址的影响建议先将之前配置的阿里云Maven私服镜像地址注释掉等练习完后再将其恢复。 至此本地仓库就能与私服进行交互了。 6.5 私服资源上传与下载
本地仓库与私服已经建立了连接接下来我们就需要往私服上上传资源和下载资源具体的实现步骤为: 步骤1:配置工程上传私服的具体位置 !--配置当前工程保存在私服中的具体位置--
distributionManagementrepository!--和maven/settings.xml中server中的id一致表示使用该id对应的用户名和密码--iditheima-release/id!--release版本上传仓库的具体地址--urlhttp://localhost:8081/repository/itheima-release//url/repositorysnapshotRepository!--和maven/settings.xml中server中的id一致表示使用该id对应的用户名和密码--iditheima-snapshot/id!--snapshot版本上传仓库的具体地址--urlhttp://localhost:8081/repository/itheima-snapshot//url/snapshotRepository
/distributionManagement步骤2:发布资源到私服 或者执行Maven命令
mvn deploy注意:
要发布的项目都需要配置distributionManagement标签要么在自己的pom.xml中配置要么在其父项目中配置然后子项目中继承父项目即可。
发布成功在私服中就能看到: 现在发布是在itheima-snapshot仓库中如果想发布到itheima-release仓库中就需要将项目pom.xml中的version修改成RELEASE即可。
如果想删除已经上传的资源可以在界面上进行删除操作: 如果私服中没有对应的jar会去中央仓库下载速度很慢。可以配置让私服去阿里云中下载依赖。 至此私服的搭建就已经完成相对来说有点麻烦但是步骤都比较固定后期大家如果需要的话就可以参考上面的步骤一步步完成搭建即可。 学习笔记 from 黑马程序员 By – Suki 2023/4/6