maven私服搭建与使用教程

 更新时间:2023年03月16日 15:31:48   作者:雙湖之梦  
在使用maven进行Java项目的开发过程中,难免会有些公共的私有库,这些库是不太方便放到中央仓库的,可以通过Nexus搭建一个私有仓库,这篇文章主要介绍了maven私服搭建与使用,需要的朋友可以参考下

概述

在使用maven进行Java项目的开发过程中,难免会有些公共的私有库,这些库是不太方便放到中央仓库的,可以通过Nexus搭建一个私有仓库。

Nexus部署

下载安装包

通过下载安装包nexus-3.47.1-01-unix.tar.gz。

安装

解压安装包

Nexus安装非常简单,只需要解压就可以了。假设安装目录为/opt/software/nexus

tar zxvf nexus-3.47.1-01-unix.tar.gz

解压之后,在/opt/software/nexus目录下,有2个目录:

  • nexus-3.47.1-01:程序目录,包含了 nexus运行需要的组件;
  • sonatype-work:数据目录,包含了 nexus 管理的所有存储库、组件和其他数据。

启动程序

执行如下命令,启动nexus:

nexus-3.47.1-01/bin/nexus start

启动之后,就可以使用。默认访问地址为:http://localhost:8081/

安装问题集锦

找不到jdk

执行启动命令,找不到jdk。

No suitable Java Virtual Machine could be found on your system.
The version of the JVM must be 1.8.
Please define INSTALL4J_JAVA_HOME to point to a suitable JVM.

由于Nexus只支持Java8,如果机器上的JDK版本高于8,则需要另外安装下Java8,并通过配置环境变量INSTALL4J_JAVA_HOME来解决。环境变量如下:

# INSTALL4J_JAVA_HOME是Java8的JAVA_HOME
export INSTALL4J_JAVA_HOME='/opt/jdk1.8.0_202'

启动后,8081端口打不开,无法访问

确认下,服务器是否开启了防火墙

默认密码

Nexus的默认密码放在${HOME}/sonatype-work/nexus/admin.password文件里,我的就是/opt/software/nexus/sonatype-work/nexus/admin.password,通过如下命令,拿到密码就可以登录了

cat /opt/software/nexus/sonatype-work/nexus/admin.password

使用

从私服里下载Jar

在需要下载私包的pom文件内,配置私服地址就可以了,具体如下:

<repositories>
  <repository>
    <!-- Maven 自带的中央仓库使用的Id为central 如果其他的仓库声明也是用该Id就会覆盖中央仓库的配置 -->
    <id>raina-releases</id>
    <layout>default</layout>
    <name>releases</name>
    <!-- 这里的IP改成具体服务器IP -->
    <url>http://{$IP}:8081/nexus/content/repositories/releases</url>
  </repository>
</repositories>

发布私包

配置Nexus密码

在Maven的settings.xml里(一般路径为:${MVN_HOME}/conf/settings.xml),添加如下配置:

<server>
    <id>customNexus</id>
    <username>admin</username>
    <!-- admin的登录密码,使用默认密码登录后,会修改成自定义的密码 -->
    <password>admin123</password>
</server>

pom.xml里添加仓库配置

在待发布的项目pom.xml添加如下配置:

  <distributionManagement>
    <repository>
      <id>customNexus</id>
      <name>custom Nexus Release Repository</name>
      <!-- 这里的IP改成具体服务器IP -->
      <url>http://{$IP}:8081/repository/maven-releases/</url>
      <layout>default</layout>
    </repository>
  </distributionManagement>

发布

执行如下命令,则可以将私包发布到私服了:

mvn clean deploy

发布问题

如果包无法delopy,可以修改仓库策略:

到此这篇关于maven私服搭建与使用的文章就介绍到这了,更多相关maven私服搭建内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SpringBoot实现本地上传文件到resources目录

    SpringBoot实现本地上传文件到resources目录

    Java后端项目上传文件是一个很常见的需求,这篇文章主要为大家介绍了SpringBoot如何实现本地上传文件到resources目录永久保存下载,需要的可以参考一下
    2023-07-07
  • MybatisPlus:使用SQL保留字(关键字)的操作

    MybatisPlus:使用SQL保留字(关键字)的操作

    这篇文章主要介绍了MybatisPlus:使用SQL保留字(关键字)的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • SpringBoot实现发送邮件、发送微信公众号推送功能

    SpringBoot实现发送邮件、发送微信公众号推送功能

    这篇文章主要介绍了SpringBoot实现发送邮件、发送微信公众号推送功能,这里对成员变量JavaMailSender使用了@Resource注解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • java并发编程专题(一)----线程基础知识

    java并发编程专题(一)----线程基础知识

    这篇文章主要介绍了java并发编程线程的基础知识,文中讲解非常详细,帮助大家更好的学习JAVA并发编程,感兴趣想学习JAVA的可以了解下
    2020-06-06
  • Docker 快速部署Springboot项目超详细最新版

    Docker 快速部署Springboot项目超详细最新版

    这篇文章主要介绍了Docker 快速部署Springboot项目超详细最新版的相关资料,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • SpringBoot集成Beetl后统一处理页面异常的方法

    SpringBoot集成Beetl后统一处理页面异常的方法

    这篇文章主要介绍了SpringBoot集成Beetl后统一处理页面异常的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • Spring Boot 中的任务执行器基本概念及使用方法

    Spring Boot 中的任务执行器基本概念及使用方法

    务执行器是 Spring Boot 中的一个非常实用的模块,它可以简化异步任务的开发和管理,在本文中,我们介绍了任务执行器的基本概念和使用方法,以及一个完整的示例代码,需要的朋友可以参考下
    2023-07-07
  • SpringBoot+Vue实现动态菜单的思路梳理

    SpringBoot+Vue实现动态菜单的思路梳理

    这篇文章主要为大家详细介绍了利用SpringBoot+Vue实现动态菜单的思路梳理,文中的示例代码讲解详细,感兴趣的小伙伴可以动手尝试一下
    2022-07-07
  • SpringBoot中Bean生命周期自定义初始化和销毁方法详解

    SpringBoot中Bean生命周期自定义初始化和销毁方法详解

    这篇文章给大家详细介绍了SpringBoot中Bean生命周期自定义初始化和销毁方法,文中通过代码示例讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-01-01
  • 关于Idea卡在Resolving Maven dependencies的解决方案

    关于Idea卡在Resolving Maven dependencies的解决方案

    本文详细介绍了关于Idea卡在Resolving Maven dependencies的解决方案,文中通过图文结合的形式给大家介绍的非常详细,对大家解决问题有一定的帮助,需要的朋友可以参考下
    2024-02-02

最新评论