1、为什么需要maven私有仓库?

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

2、下载和部署Nexus

首先下载nexus,下载地址是http://www.sonatype.org/nexus/go
在此页面可以下载最新版本的Nexus,可以下载zip包也可以下载war包。需要注意的是两种包的部署方式不一样。

zip包部署方式

a.把zip包解压到指定路径如“D:\workbase”

b.运行cmd然后进入“D:\workbase\nexus-2.6.0-05\bin”路径

c.然后运行nexus.bat install命令安装nexus

d.然后运行nexus.bat start命令启动nexus

其他命令有nexus.bat stop停止 nexus.bat restart重启 nexus.bat uninstall卸载

war包部署方式

直接把war包放到tomcat的webapp下,启动tomcat即可。

在浏览器地址栏输入http://localhost:8088/nexus/即进入nexus首页。有管理nexus要以管理员身份登录,点击首页右上角的login输入默认登录名、密码admin/admin123即可登录。

注意与jdk的版本搭配

官方下载的最新版本是2.6.0-05,jdk1.6版本启动nexus有错误不能启动,错误如下:

Launching a JVM...
jvm 5    | java.lang.UnsupportedClassVersionError: org/sonatype/nexus/bootstrap/jsw/JswLauncher : Unsupported major.minor version 51.0

在官网下载早期版本的Nexus如2.4.0替换掉即可。

登录系统后点击左侧菜单栏Views/Repositories下的Repositories选择Central仓库点击下边的Configuration把Download Remote Indexes属性设为True保存即可。

点击Repositories ,可以看到仓库列表,包括下面几种:

Public Repositories      仓库组 
3rd part                     三方库,可以上传jar包到这个仓库
Central                      maven中心仓库
Releases                    自己项目中发布的构建 
Snapshots                 trunk 下开发一个项目

然后在Central仓库上右键然后点击Repair Index 即可下载中心仓库的索引文件,稍等几分钟点击下边的Browse Index即可看见下载的索引文件。

往Public Repositories中添加Central仓库,点击Public Repositories在Configuration选项卡中把Central移到左侧即可。

最后在自己的应用中把中心仓库配置成建立的私有仓库地址即可,修改本地的maven配置文件,C:\Documents and Settings\用户名\.m2\setting.xml

在mirrors添加mirror节点地址指向建立的私有仓库地址,mirrorOf属性值设为central为了覆盖超级pom中指定的central地址,如下

Maven 仓库

Maven 包集中存放的地方,就是 Maven 仓库。这些仓库,可以是放在本地,也可以放在某个远程服务器上。 可以是私有仓库,也可以是公开的。

  • 存在本地的
maven {
url 'file:///Users/my-user-name/Documents/Android/repo/'
}
  • 存在内网服务器的
maven {
url 'http://192.168.99.100:8081/content/repositories/releases/'
}
  • 存在某个远程服务器的
maven {
url 'https://raw.githubusercontent.com/liaohuqiu/umeng-libs/master/repository'
}

附录:Maven仓库地址收录

公有的仓库 
http://repo1.maven.org/maven2/ 
http://repository.jboss.com/maven2/ 
http://repository.sonatype.org/content/groups/public/ 
http://mirrors.ibiblio.org/pub/mirrors/maven2/org/acegisecurity/

私有的仓库 
http://repository.codehaus.org/ 
http://snapshots.repository.codehaus.org/ 
http://people.apache.org/repo/m2-snapshot-repository 
http://people.apache.org/repo/m2-incubating-repository/

[maven] 使用Nexus创建maven私有仓库的更多相关文章

  1. 07 Maven 使用Nexus创建私服

    7. Maven 使用Nexus创建私服 私服不是 Maven 的核心概念,它仅仅是一种衍生出来的特殊的 Maven 仓库.通过建立自己的私服,就可以降低中央仓库负荷.节省外网带宽.加速 Maven ...

  2. 创建Harbor私有仓库

    前提 1.安装docker服务 参考:https://blog.csdn.net/weixin_36522099/article/details/108861134 老名字:docker.docker ...

  3. 使用nexus创建maven私有仓库

    nexus安装 nexus下载 wget https://sonatype-download.global.ssl.fastly.net/nexus/oss/nexus-2.11.1-01-bundl ...

  4. maven+nexus配置本地私有仓库

    以下是settting.xml的配置 <?xml version="1.0" encoding="UTF-8"?> <settings> ...

  5. nexus3使用docker运行/创建docker私有仓库/maven私有仓库

    version: '3.2' services: nexus3: container_name: nexus3 hostname: nexus3 image: sonatype/nexus3:3.14 ...

  6. 使用Nexus创建Maven私服

    Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问.利用Nexus你可以只在一个地方就能够完全控制访问和部署在你所维护仓库中的每个Artifact.Nexus ...

  7. 在Maven的配置文件中,自定义私有仓库地址和设置下载的jar包的保存位置

    在Maven的settings.xml,可以设置Maven的私有仓库的地址,还可以设置所下载jar包在自己电脑的保存地址(默认不设置保存在个人文件夹的.m2文件夹下). 1.设置私有仓库地址: < ...

  8. Maven第四篇【私有仓库、上传jar包、引用私服jar包、上传本地项目到私服】

    搭建私有服务器 前面已经说过了,我们使用Maven的使用,如果需要导入相对应的jar包,Maven首先会在我们的本地仓库中寻找->私有仓库->中心仓库- 然而,我们的本地仓库常常没有想要的 ...

  9. 【Maven】Nexus(Maven仓库私服)下载与安装

    Nexus介绍 Nexus 是Maven仓库管理器,如果你使用Maven,你可以从Maven中央仓库 下载所需要的构件(artifact),但这通常不是一个好的做法,你应该在本地架设一个Maven仓库 ...

随机推荐

  1. Linux下查看系统版本号信息的方法(转)

    一.查看Linux内核版本命令: 1.cat /proc/version [root@localhost ~]# cat /proc/versionLinux version 2.6.18-194.8 ...

  2. 如何让VMware低版本运行VMware高版本创建的虚拟机

    如何让VMware低版本运行VMware高版本创建的虚拟机 问题描述: 本机安装的VMware Workstation是10版本,之前VMware Workstation 11版本创建的虚拟机,在运行 ...

  3. Java提高篇——通过分析 JDK 源代码研究 Hash 存储机制

    HashMap 和 HashSet 是 Java Collection Framework 的两个重要成员,其中 HashMap 是 Map 接口的常用实现类,HashSet 是 Set 接口的常用实 ...

  4. HTML5本地存储之localStorage

    存入本地中:localStorage.setItem('Code',‘10001’) 获取:localStorage.getItem('Code')

  5. AjaxFileUpload 方法与原理分析

    AjaxFileUpload需求 传统的form表单方式上传文件,  必然会刷新整个页面. 那么在不刷新界面的情况下实现文件的上传呢? 在 HTML4下, 聪明的程序员们发明了 ajax file u ...

  6. DuiLib学习bug整理——某些png不能显示

    今天下午遇到用ps导出的png显示不出来的情况.而从其他来源的png有的可以显示.到群里问了下也有人遇到过,但是都没想明白具体原因.后来经人指点说png保存时存在深度位不同.最后经过测试 8位深度.3 ...

  7. 解决qt程序的链接阶段出现 undefined reference 错误

    错误的原因是我使用到了 QT Widgets 模块中的东西,但是makefile的链接的参数中没有 widgets.其实官网上提到了这个: http://doc.qt.io/qt-5/qtwidget ...

  8. for循环使用详解(c语言版)

    说明:c语言的很多语法部分都和JAVA,AS等相同 特别是for的用法. c语言中的for循环语句使用最为灵活,不仅可以用于循环次数已经确定的情况,而且可以用于循环次数不确定而只给出循环结束条件的情况 ...

  9. install cygwin

    make clean

  10. SQL优化大全

    1. 优化SQL步骤 1. 通过 show status和应用特点了解各种 SQL的执行频率 通过 SHOW STATUS 可以提供服务器状态信息,也可以使用 mysqladmin extende d ...