因工作需要,需要搭建公司自己的私有仓库,存储自己的私有jar包,所以研究了下

一、环境准备

1、下载并安装nexus,然后启动项目,这部分攻略网上很多,而且基本上都是正确的,此处不做梳理

2、登录127.0.0.1:8081,默认用户名密码是admin/admin123

3、创建私有仓库

  

  仓库类型有hosted、proxy、group,hosted-本地存储。像官方仓库一样提供本地私库功能;proxy-提供代理其它仓库的类型;group-组类型,能够组合多个仓库为一个地址提供服务,所以这里选hosted。

  

  保存后在列表页面点击新创建的仓库,进到详细页面,查看仓库地址并妥善保存,后面会用到

  

4、创建角色,只拥有新增仓库的读取权限。

  

5、创建拥有该角色的用户

这样仓库就创建好了,接下来是使用,首先是导入jar包,目前只研究了网页导入

二、私有jar包上传

1、查找上传入口

2、选择jar包并维护信息,如果勾选了Generate a POM file with these coordinates,会自动生成pom文件信息

3、确认jar包,如果按照步骤看到如下信息,表示已经上传成功

三、本地导出

1、本地maven改造,修改setting文件

  首先维护用户信息,记住此处配置的server.id,后面会用到

<servers>
  <server>
    <id>dingxf-third_part</id>
    <username>dingxf</username>
    <password>dingxf</password>
  </server>
</servers>

 然后配置仓库信息,首先在<profiles></profiles>中维护以下信息

<profile>
<!-- 自定义不重复id -->
<id>dingxf</id>
<repositories>
<repository>
<!-- 维护的server.id 如果维护错误会报错:Not authorized , ReasonPhrase:Unauthorized -->
<id>dingxf-third_part</id>
<!-- 自定义name名,无要求 -->
<name>dingxf</name>
<!-- 一.3中保存的地址名,如果维护错误会报错:Could not find artifact jar包 in wecredo-third_part (http://url地址) -->
<url>http://182.92.122.172:8081/repository/third_part/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<!-- 维护的server.id 如果维护错误会报错:Not authorized , ReasonPhrase:Unauthorized -->
<id>dingxf-third_part</id>
<!-- 自定义name名,无要求 -->
<name>dingxf</name>
<!-- 一.3中保存的地址名,如果维护错误会报错:Could not find artifact jar包 in wecredo-third_part (http://url地址) -->
<url>http://182.92.122.172:8081/repository/third_part/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>

然后在最外层<settings></settings>中维护以下信息

<activeProfiles>
<!-- profile.id 如果不维护或错误会报错:Could not find artifact xxxxx in central (https://repo.maven.apache.org/maven2),此时私有仓库不起作用 -->
<activeProfile>dingxf</activeProfile>
</activeProfiles>

2、然后项目的pom.xml中维护以下信息

<distributionManagement>
<repository>
<!-- 维护的server.id 如果维护错误会报错:Not authorized , ReasonPhrase:Unauthorized -->
<id>dingxf-third_part</id>
<!-- 自定义name名,无要求 -->
<name>dingxf-third_part</name>
<!-- 一.3中保存的地址名,如果维护错误会报错:Could not find artifact jar包 in dingxf-third_part (http://url地址) -->
<url>http://182.92.122.172:8081/repository/third_part/</url>
</repository> <snapshotRepository>
<!-- 维护的server.id 如果维护错误会报错:Not authorized , ReasonPhrase:Unauthorized -->
<id>dingxf-third_part</id>
<!-- 自定义name名,无要求 -->
<name>dingxf-third_part</name>
<!-- 一.3中保存的地址名,如果维护错误会报错:Could not find artifact jar包 in dingxf-third_part (http://url地址) -->
<url>http://182.92.122.172:8081/repository/third_part/</url>
</snapshotRepository>
</distributionManagement>

maven私有仓库从搭建到使用的更多相关文章

  1. 实战maven私有仓库三部曲之一:搭建和使用

    在局域网内搭建maven私有仓库,可避免每次都从中央仓库下载公共jar包,另外将A模块作为二方库发布到私有仓库后,B模块可以很方便的引用,今天我们就来实战maven私有仓库的搭建和使用: 原文地址:h ...

  2. 实战maven私有仓库三部曲之三:Docker下搭建maven私有仓库

    本章是<实战maven私有仓库>系列的第三篇,在前两章中,我们先在linux搭建maven私有仓库,然后在开发环境使用此仓库,本章我们在docker下快速搭建maven私有仓库,然后像前面 ...

  3. 用nexus搭建自己的maven私有仓库

    用nexus搭建自己的maven私有仓库  刚安装nexus时,nexus启动失败,启动不到1分钟,自动停止.后来查找到了原因: Java 6 Support EOLOracle's support ...

  4. 安装Maven并搭建Maven私有仓库

    一.说明 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具.我们在进行Java代码开发的时候,Eclipse+Maven+Jetty是一个十 ...

  5. 使用nexus3.10搭建maven私有仓库

    使用nexus3.10搭建maven私有仓库-----详见如下链接-- --此贴用于笔记 https://blog.csdn.net/vipbupafeng/article/details/80232 ...

  6. 使用nexus搭建一个maven私有仓库

    使用nexus搭建一个maven私有仓库 大家好,我是程序员田同学.今天带大家搭建一个maven私有仓库. 很多公司都是搭建自己的Maven私有仓库,今天就带大家使用nexus搭建一个自己的私有仓库, ...

  7. 【图文并茂】 做开发这么久了,还不会搭建服务器Maven私有仓库?这也太Low了吧

    大家好,我是冰河~~ 最近不少小伙伴想在自己公司的内网搭建一套Maven私服环境,可自己搭建的过程中,或多过少的总会出现一些问题,问我可不可以出一篇如何搭建Maven私服的文章.这不,就有了这篇文章嘛 ...

  8. 实战maven私有仓库三部曲之二:上传到私有仓库

    在上一章<实战maven私有仓库三部曲之一:搭建和使用>我们搭建了maven私有仓库,并体验了私有仓库缓存jar包的能力,避免了局域网内开发人员去远程中央仓库下载的痛苦等待,本章我们再来体 ...

  9. [maven] 使用Nexus创建maven私有仓库

    1.为什么需要maven私有仓库? 从Maven中央仓库下载所需的jar包,需要外网的支持.如果公司不能上外网的话则不能从中央仓库下载所需jar包,公司网速慢的时候也会影响项目构建的速度.用户可以用n ...

随机推荐

  1. Java类与对象的创建

    以类的方式组织代码,以对象的方式组织(封装)数据 组织代码(类) public class Demo04 { String name;//默认值null int age;//默认值0 public v ...

  2. Api自动生成

    如果经常对接api, 可以自己写一个自动化生成代码,提高效率 只抛出一个思路,暂不提供源码 使用json+字符串处理+生成文件 发送一个请求,返回字符串转换为 Newtonsoft.Json.Linq ...

  3. uniapp微信小程序保存base64格式图片的方法

    uniapp保存base64格式图片的方法首先第一要先获取用户的权限 saveAlbum(){//获取权限保存相册 uni.getSetting({//获取用户的当前设置 success:(res)= ...

  4. 2022GDUT寒训专题一I题

    题目 题面 给一个长度为 N的数组,一个长为 K的滑动窗体从最左端移至最右端,你只能看到窗口中的 K 个数,每次窗体向右移动一位,如下图: 窗口位置 最小值 最大值 [1 3 -1] -3 5 3 6 ...

  5. AOP-操作术语

    AOP(术语) 1,连接点 类里面哪些方法可以被增强,这些方法称为连接点 2,切入点 实际被真正增强的方法,称为切入点 3,通知(增强) (1)实际增强的逻辑部分称为通知(增强) (2)通知有多种类型 ...

  6. 集合框架-工具类-JDK5.0特性-ForEach循环

    1 package cn.itcast.p4.news.demo; 2 3 import java.util.ArrayList; 4 import java.util.HashMap; 5 impo ...

  7. python -m详解

    温馨提示: 本篇演示环境是Python 3.8 先python --help看下python -m参数的解释: -m mod : run library module as a script (ter ...

  8. lsof恢复误删文件

    用 lsof 恢复 误删除文件实验: 先模拟一个进程: [tiger@root:/home/tiger]$ echo "hello deletede" >> test. ...

  9. Redis命令大全(超详细)

    一:序 其实本文的命令大家都可以去官网学习,但是我出这篇文章只是以更直观的方式来解读官网上的命令,让大家一眼可以看得懂,看的明白: 注意:我全文使用的Redis版本为 6.2.x 版本,低版本可能有些 ...

  10. Python初学笔记列表&元组&字典

    一.从键盘获取 1 print("请输入") 2 username = input("姓名:") 3 age = input("年龄:") ...