因工作需要,需要搭建公司自己的私有仓库,存储自己的私有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. MMI开机时间偏长

      Mini版本开机时间长 Mini版本开机时间长1. Problem Description:2. Analysis:3. Solution:4. Summary: 1. Problem Descr ...

  2. opencv 4.0 + linux下静态编译,展示详细ccmake的参数配置

    #先安装 cmake 3.14 # cmake安装到了 /usr/local/bin #配置PATH export PATH="$PATH:/usr/local/bin" #下载最 ...

  3. ipython notebook教程

    一.简介 Jupyter Notebook是一个开源的Web应用程序,允许用户创建和共享包含代码.方程式.可视化和文本的文档.它的用途包括:数据清理和转换.数值模拟.统计建模.数据可视化.机器学习等等 ...

  4. golang中循环或递归求阶乘

    package main import "fmt" func factorialFor(num int) (ret int) { // 循环求阶乘 ret = 1 for i := ...

  5. Servlet程序常见错误

    常见错误1:url-pattern中配置的路径没有以斜杠打头. 常见错误2:servlet-name配置的值不存在 常见错误3:servlet-class 标签的全类名配置错误

  6. Ldap主从复制搭建

    LDAP是轻量目录访问协议(Lightweight Directory Access Protocol)的缩写, LDAP协议的特点 读取速度远高于写入速度. 对查询做了优化,读取速度优于普通关系数据 ...

  7. Kubernetes 证书默认1年过期时间修改

    使用过的kubeadm搭建K8s集群的朋友知道,默认自动生成的证书有效期只有 1 年,因此需要每年手动更新一次证书,这种形式显然对实际生产环境来说很不友好:因此下面教给大家修改这个过期时间的终极方法. ...

  8. .NET 7 预览版来啦,我升级体验了

    听说.NET 7 来了,站长怎能不尝鲜呢,在除夕当天将体验情况简单汇报下,然后迎新春喽: 本文目录 .NET 7 详情(Proposed .NET 7 Breaking Changes #7131) ...

  9. 分页方法需要参数(当前页数,总数据量,拿到query的值)

    class Pagination: def __init__(self, page_num, all_count ,params=None,per_num=10,max_show=11): " ...

  10. 学习MyBatis必知必会(6)~Mapper基础的拓展

    一.typeAlias 类型别名[自定义别名.系统自带别名] 1.类型别名:为 Java 类型设置一个缩写名字. 它仅用于 XML 配置,意在降低冗余的全限定类名书写 2.配置自定义别名: (1)方式 ...