Maven入门之使用Nexus搭建Maven私服及上传下载jar包

这里是“Maven入门之使用Nexus搭建Maven私服及上传下载jar包”的完整攻略。

准备工作

  1. 安装JDK和Maven
  2. 下载和安装Nexus
  3. 启动Nexus

配置Maven仓库

Nexus默认内置了一个Maven2仓库。如果需要创建自己的仓库,可以按如下步骤操作:

  1. 点击页面左侧的“Repositories”选项卡
  2. 在页面上方点击“Create Repository”按钮
  3. 在弹出的对话框中选择Repository Format和其他相关配置项,点击“Create Repository”按钮即可创建

配置Maven项目

Maven项目需要将仓库地址指向Nexus搭建的私服,具体配置方式如下:

  1. 打开Maven项目的settings.xml文件,添加以下配置:
<settings>
  <servers>
    <server>
      <id>nexus-releases</id>
      <username>admin</username>
      <password>admin123</password>
    </server>
    <server>
      <id>nexus-snapshots</id>
      <username>admin</username>
      <password>admin123</password>
    </server>
  </servers>
  <mirrors>
    <mirror>
      <id>nexus</id>
      <mirrorOf>*</mirrorOf>
      <url>http://localhost:8081/repository/maven-public/</url>
    </mirror>
  </mirrors>
</settings>

其中,id标签中的值需要和Nexus中创建的仓库名称一致,usernamepassword标签中填写Nexus的登录信息,mirrorOf标签中填写仓库名称,url标签中填写私服的地址。

  1. 在项目的pom.xml文件中,添加以下内容:
<distributionManagement>
  <repository>
    <id>nexus-releases</id>
    <url>http://localhost:8081/repository/maven-releases/</url>
  </repository>
  <snapshotRepository>
    <id>nexus-snapshots</id>
    <url>http://localhost:8081/repository/maven-snapshots/</url>
  </snapshotRepository>
</distributionManagement>

其中,repositorysnapshotRepository分别对应Nexus创建的releasessnapshots仓库名称,url对应仓库地址。

上传和下载jar包

  1. 上传jar包

可以在Nexus中手动上传jar包,也可以通过Maven命令行实现。

手动上传:

  • 点击左侧菜单栏的“Artifact Upload”选项卡。
  • 选择jar包所在的位置,填写groupId、artifactId、version等信息,点击上传按钮即可。

命令行上传:

mvn deploy:deploy-file -DgroupId=<group-id> \
  -DartifactId=<artifact-id> \
  -Dversion=<version> \
  -Dpackaging=<type-of-packaging> \
  -Dfile=<path-to-file> \
  -DrepositoryId=<id-to-map-on-server> \
  -Durl=<url-of-the-repository>
  1. 下载jar包

配置好私服地址后,在Maven项目中引用已上传jar包的方式和普通情况下一致,只是将远程仓库地址换成了本地私服的地址,Maven会自动在私服中查找对应的jar包并下载。

示例1:上传和下载jar包

上传jar包:

mvn deploy:deploy-file -DgroupId=com.example \
  -DartifactId=my-app \
  -Dversion=1.0 \
  -Dpackaging=jar \
  -Dfile=my-app-1.0.jar \
  -Durl=http://localhost:8081/repository/maven-releases/ \
  -DrepositoryId=nexus-releases

下载jar包:

<dependencies>
  <dependency>
    <groupId>com.example</groupId>
    <artifactId>my-app</artifactId>
    <version>1.0</version>
  </dependency>
</dependencies>

示例2:创建自定义Maven仓库

  1. 点击Nexus主界面的“Repositories”选项卡
  2. 点击右上角的“Create Repository”按钮
  3. 在弹出的对话框中,选择“proxy”类型,填写相关配置项
  4. 单击“Create Repository”按钮,保存配置。

可参考以下配置:

<repository>
  <id>nexus-proxy</id>
  <name>Nexus Proxy Repository</name>
  <url>http://central</url>
  <mirrorOf>*</mirrorOf>
</repository>

其中,idname可自定义,url填写需要代理的仓库地址,mirrorOf填写*表示将所有从远程仓库获取的包统一代理到本地私服。

这就是“Maven入门之使用Nexus搭建Maven私服及上传下载jar包”的完整攻略,希望能对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Maven入门之使用Nexus搭建Maven私服及上传下载jar包 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • Java枚举类接口实例原理解析

    让我详细讲解一下“Java枚举类接口实例原理解析”完整攻略。 什么是枚举类接口 在Java的枚举类中,可以通过实现接口的方式来为枚举类型增加额外的行为。这种实现接口的方式成为“枚举类接口”。 枚举类接口的实现原理 在Java中,每一个枚举值实际上都是一个枚举类的实例对象,它们是在枚举类加载的时候被创建出来的。而实现枚举类接口的过程,则是在此时动态为每个枚举值…

    Java 2023年5月26日
    00
  • Java中关于Null的9个解释(Java Null详解)

    Java中的null是一个特殊值,表示一个对象引用或数组元素的未初始化的状态。它常被用于指示对象或数组值的缺失和空状态。 Java中关于null的9个解释如下: 1. null是Java关键字 \null是Java中的一个关键字,用于表示变量或表达式没有值或引用任何对象。可以将其分配给任何对象类型的引用变量或返回其中。例如: String s = null;…

    Java 2023年5月23日
    00
  • Spring一步到位精通拦截器

    Spring一步到位精通拦截器攻略 Spring 框架提供了拦截器(Interceptor)来拦截和处理请求,使用拦截器可以方便的实现通用的功能,比如权限验证、日志记录、事务管理等,从而减少重复代码的编写,提高了代码的可重用性和可维护性。 本文将详细介绍 Spring 拦截器的知识和使用方法,内容涵盖以下方面: Spring 拦截器介绍 Spring 拦截器…

    Java 2023年5月19日
    00
  • nginx proxy_pass指令’/’使用注意事项

    当使用Nginx作为代理服务器时,proxy_pass指令非常重要。它可以用来转发请求给后端服务器。在使用proxy_pass指令时,特别是使用代理根路径时,需要注意一些事项。以下是nginx proxy_pass指令‘/’使用注意事项的完整攻略。 1. 确定目标地址 在使用proxy_pass指令时,首先需要确保已经确定了正确的目标地址。这可以是一个IP地…

    Java 2023年6月15日
    00
  • java实现连接mysql数据库单元测试查询数据的实例代码

    Java是一个广泛使用的编程语言,MySQL是一种流行的开源关系型数据库。在Java应用程序中连接MySQL数据库是一个常见的任务。单元测试是一种测试方法,用于确保代码的正确性。下面是一些步骤和示例代码,用于在Java中连接MySQL数据库并编写单元测试来查询数据。 步骤一:安装并配置MySQL数据库 首先需要安装MySQL数据库,并创建一个或多个数据库和表…

    Java 2023年5月19日
    00
  • Java时区转换实例代码解析

    这里是Java时区转换的详细解析攻略。 1. 时区转换概述 在Java中,时区转换一般通过Calendar类来实现,Java中的Calendar类封装了世界上大部分时区的日期和时间信息。 一般来说,时区转换需要经过以下几个步骤: 设置日期和时间 设置时区 进行时区转换 下面我们将结合两个示例来详细讲解这个过程。 2. 示例1 假设我们有一个表示美国纽约时间的…

    Java 2023年5月20日
    00
  • springBoot下实现java自动创建数据库表

    下面是详细的攻略: 1. 环境准备 首先,我们需要准备以下环境: JDK 1.8 Maven 3.x IntelliJ IDEA(或者其他喜欢的IDE) 确保你已经安装了以上软件,并且已经设置好了环境变量。 2. 创建Spring Boot项目 第二步,我们需要创建一个Spring Boot项目,方法如下: 打开IntelliJ IDEA,选择 File -…

    Java 2023年5月19日
    00
  • java对同一个文件进行读写操作方法

    要在Java中对同一个文件进行读写操作,我们可以使用Java的File类和I/O流,具体方法如下: 使用File类实例化File对象来代表文件。可以在实例化File对象时指定文件的路径和文件名,例如: File file = new File("path/to/file.txt"); 其中,”path/to/file.txt”应替换为实际…

    Java 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部