nexus私服仓库搭建以及项目引用
第一步:使用ubunto下载安装nexus 并打开登录进入到nexus管理页面,默认账号为 admin 密码在 admin.password 中,首次登录会让你重新修改密码

第二步 配置自己本地Maven的settings.xml文件,
<services>
<server>
<id>nexus-releases</id>
<username>admin</username>
<password>admin123</password>
</server> <server>
<id>nexus-snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</services>
第三步 以一个基础的公共ssm项目为模板,创建并上传私服仓库的依赖,需要在本地项目的pom.xml中加上以下配置
<distributionManagement>
<repository>
<id>nexus-releases</id>
<name>Nexus Release Repository</name> <-- 这里的url地址换成登录进入之后换成自己私服仓库的ip地址 -->
<url>http://192.168.2.135/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>nexus-snapshots</id>
<name>Nexus Snapshot Repository</name>
<-- 这里的url地址换成登录进入之后换成自己私服仓库的ip地址 -->
<url>http://192.168.2.135/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>
<repositories>
<repository>
<id>nexus</id>
<name>Nexus Repository</name>
<-- 这里的url的ip换成自己私服仓库的ip -->
<url>http://127.0.0.1:8081/repository/maven-public/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>nexus</id>
<name>Nexus Plugin Repository</name>
<-- 这里的url的ip地址换成自己私服仓库的ip -->
<url>http://127.0.0.1:8081/repository/maven-public/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</pluginRepository>
</pluginRepositories>
注意!!!!:我们的公共部分的依赖和工具类需要打成jar包上传到私服仓库,才可以被其他项目引用,不能打成war包

第四步 项目pom配置好之后,执行mvn deploy 或者点击 maven -> lifecycle中的deploy 这样自己的私服仓库就上传创建成功,使用的是快照版 (正式版为releases)
或者执行 mvn deploy命令
私服建立好之后,返回到自己的nexus 按照以下步骤就可以看到自己的私服仓库了


我们的私服仓库就在 maven-snapshots 中,生成的jar包就可以被其他项目引用,如下图:

这里的上面的大版本是不会变的,这样的话下次有更新修改的时候不用再去改大版本的命名, 可以自动拉取最近的依赖坐标

结束:这样一个完整的私服仓库 创建成功,下次更新,直接在公共项目中执行 mvn deploy命令就可以了
nexus私服仓库的使用:
新建一个ssm框架项目,在pom.xml文件中 配置以下信息:
注意!!!:由于使用的是我们的私服仓库,我们需要在idea中设置一下maven,设置为自动更新最新的snapshot:

<repositories>
<repository>
<!--这里的id要和maven中的settings.xml的id一致,这样才能识别依赖做坐标-->
<id>nexus-snapshots</id>
<name>Nexus Repository</name>
<url>http://10.31.160.35/repository/maven-public/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
</repositories>
导入私服仓库的依赖坐标:
<dependency>
<groupId>com.qfedu</groupId>
<artifactId>my-shop</artifactId>
<-- 这里的坐标直接导入上面基础ssm模板的坐标-->
<version>1.0-SNAPSHOT</version>
</dependency>

这样新建项目就会自动导入私服仓库中的所有依赖,并且可以使用作为私服仓库中的公共工具类或者其他任何类,


nexus私服仓库搭建以及项目引用的更多相关文章
- Maven仓库搭建--nexus私服
Maven仓库搭建--nexus私服(Linux环境) Maven仓库简介 Maven仓库分为本地仓库.远程仓库.私服.本文重点介绍私服的使用方法. 下载安装包 网址:http://www.sonat ...
- 在pom.xml中使用distributionManagement将项目打包上传到nexus私服
本文介绍 如何在pom.xml中使用distributionManagement将项目打包上传到nexus私服 1.pom.xml文件添加distributionManagement节点 <!- ...
- ava Maven项目之Nexus私服搭建和版本管理应用
目录: Nexus介绍 环境.软件准备 Nexus服务搭建 Java Maven项目版本管理应用 FAQ 1.Nexus介绍 Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维 ...
- Maven发布项目到Nexus私服中 (发布jar包)
目录 1 需求说明 2 实现步骤 2.1 Maven服务的setting.xml文件 2.2 项目的pom.xml文件 2.3 发布项目 1 需求说明 开发完项目后, 将项目版本发布到Nexus私服中 ...
- Maven项目的打包发布到Nexus私服和服务器
1.编写pom文件如下: <build> <plugins> <plugin> <groupId>org.apache.maven.plugins< ...
- Nexus 私服上传文件,并通过 Gradle 引用
一.上传文件到 Nexus 1,进入 Nexus 仓库界面 如果你电脑还没有使用 Nexus,需要先下载并启动 Nexus 私服. 在浏览器输入:http://127.0.0.1:8081/nexus ...
- 基于nexus私服配置项目pom.xml和maven settings.xml文件
备注:搭建nexus私服请参考上一篇文章基于Docker搭建Maven私服Nexus,Nexus详解 一:将jar发送到nexus私服务器 1.pom.xml文件添加配置 pom.xml文件中的这个版 ...
- Java Maven项目之Nexus私服搭建和版本管理应用
转载自:https://cloud.tencent.com/developer/article/1010603 1.Nexus介绍 Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓 ...
- 上传jar包到nexus私服
摘要 通过网页和maven两种方式,上传本地的jar到nexus私服,以及引用jar时,自动引用依赖 1通过网页上传 这种方法只是上传了jar包.通过maven引用当前jar,不能取得jar的依赖 ...
随机推荐
- Vue内敛模板
在学习<Vue实战>一书时,学习到组件高级应用-内联模板这一小节时,照着书上的例子敲了一遍,发现未达到预期,切报错. 书上源代码如下: <!DOCTYPE html> < ...
- Thinkphp5.0 自定义命令command的使用
在app下的command文件中,定义命令所在的模块以及命名. 然后保存,打开cmd,php think 定义的那个command的名字,完整的命令行为:php think clearInvalidO ...
- 十、设计模式之代理(Proxy)模式
什么是代理模式 代理模式是对象的结构模式,为其他对象提供一种对象以控制对这个对象的访问. 代理模式的结构图如下:(源自大话设计模式) Subject:定义了RealSubject和Proxy的公共 ...
- 力扣——Partition List(分隔链表) python实现
题目描述: 中文: 给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前. 你应当保留两个分区中每个节点的初始相对位置. 示例: 输入: head = ...
- Python向方法中传递自定义类型参数
定义类型 class Fish: def __init__(self,x): self.num = xclass Turtle: def __init__(self,y): self.num = yc ...
- C语言之——__attribute__
__attribute__ ((packed)) 的作用就是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节数进行对齐,是GCC特有的语法.这个功能是跟操作系统没关系,跟编译器有关 . __ ...
- iSkysoft iMedia Converter Deluxe Mac如何制作视频?视频格式转换工具制作动图的方法
使用iSkysoft iMedia Converter Deluxe Mac如何制作视频?使用视频格式转换工具,你可以轻松进行动图或视频的制作,也可以把你喜欢的视频的某一段提取出来,制作成你自己风格的 ...
- cocos2D-X not config ndk path
{ 双击击那个error,那个路径就加上了 File = >local.properties }
- CF 1045 H. Self-exploration 解题报告
CF 1045 H. Self-exploration 考虑到串的结构一定是 1...0....1....0.....1... 这样的,而\(01\)与\(10\)在转折点交替出现 首先串长一定是\( ...
- 基于jquery和bootstrap的下拉框左右选择功能
实现如图选择的功能,可以用基于bootstrap的样式,结合jquery事件: <div class="row"> <div class="col-xs ...