Nexus常用功能就是:指定私服的中央地址、将自己的Maven项目指定到私服地址、从私服下载中央库的项目索引、从私服仓库下载依赖组件、将第三方项目jar上传到私服供其他项目组使用。

开启Nexus服务后访问url地址http://localhost:8081/nexus/(推荐使用自己的ip地址),之后登录系统,用户名密码分别是:admin/admin123.

最频繁的就是点击左侧菜单栏的Repositories按钮

group 仓库组:Nexus 通过仓库组的概念统一管理多个仓库,这样我们在项目中直接请求仓库组即可请求到仓库组管理的多个仓库;

hosted 宿主仓库:主要用于发布内部项目构件或第三方的项目构件(如购买商业的构件)  以及无法从公共仓库获取的构件(如 oracle 的 JDBC 驱动)

proxy 代理仓库:代理公共的远程仓库;

virtual 虚拟仓库:用于适配 Maven 1;

一般用到的仓库种类是 hosted、proxy

Hosted 仓库常用类型说明:

releases 内部的模块中 release 模块的发布仓库

snapshots 发布内部的 SNAPSHOT 模块的仓库

3rd party 第三方依赖的仓库,这个数据通常是由内部人员自行下载之后发布上去

如果构建的 Maven 项目本地仓库没有对应的依赖包,那么就会去 Nexus 私服去下载,   如果Nexus私服也没有此依赖包,就回去远程中央仓库下载依赖,这些中央仓库就是proxy。   Nexus 私服下载成功后再下载至本地 Maven 库供项目引用。

1、设置 proxy 代理仓库(Apache Snapshots/Central/Codehaus Snapshots)准许远程下载,

其它两个代理库也设置为true

2.Maven 本地库的安装与配置  setting.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
  5. <localRepository>D:/maven/repository</localRepository>
  6. <interactiveMode>true</interactiveMode>
  7. <offline>false</offline>
  8. <pluginGroups>
  9. <pluginGroup>org.mortbay.jetty</pluginGroup>
  10. <pluginGroup>org.jenkins-ci.tools</pluginGroup>
  11. </pluginGroups>
  12. <!--配置权限,使用默认用户-->
  13. <servers>
  14. <server>
  15. <id>nexus-releases</id>
  16. <username>deployment</username>
  17. <password>deployment123</password>
  18. </server>
  19. <server>
  20. <id>nexus-snapshots</id>
  21. <username>deployment</username>
  22. <password>deployment123</password>
  23. </server>
  24. </servers>
  25. <mirrors>
  26. </mirrors>
  27. <profiles>
  28. <profile>
  29. <id>nexus</id>
  30. <activation>
  31. <activeByDefault>false</activeByDefault>
  32. <jdk>1.7</jdk>
  33. </activation>
  34. <repositories>
  35. <!-- 私有库地址-->
  36. <repository>
  37. <id>nexus</id>
  38. <url>http://127.0.0.1:1818/nexus/content/groups/public/</url>
  39. <releases>
  40. <enabled>true</enabled>
  41. </releases>
  42. <snapshots>
  43. <enabled>true</enabled>
  44. </snapshots>
  45. </repository>
  46. </repositories>
  47. <pluginRepositories>
  48. <!--插件库地址-->
  49. <pluginRepository>
  50. <id>nexus</id>
  51. <url>http://127.0.0.1:1818/nexus/content/groups/public/</url>
  52. <releases>
  53. <enabled>true</enabled>
  54. </releases>
  55. <snapshots>
  56. <enabled>true</enabled>
  57. </snapshots>
  58. </pluginRepository>
  59. </pluginRepositories>
  60. </profile>
  61. </profiles>
  62. <!--激活profile-->
  63. <activeProfiles>
  64. <activeProfile>nexus</activeProfile>
  65. </activeProfiles>
  66. </settings>
  67. <span style="font-family:Arial, Helvetica, sans-serif;"><span style="white-space: normal;">
  68. </span></span>

3、将项目发布到私服

pom.xml 添加配置

  1. <distributionManagement>
  2. <repository>
  3. <id>nexus-releases</id>
  4. <name>Nexus Release Repository</name>
  5. <url>http://127.0.0.1:1818/nexus/content/repositories/releases/</url>
  6. </repository>
  7. <snapshotRepository>
  8. <id>nexus-snapshots</id>
  9. <name>Nexus Snapshot Repository</name>
  10. <url>http://127.0.0.1:1818/nexus/content/repositories/snapshots/</url>
  11. </snapshotRepository>
  12. </distributionManagement>

然后运行发布

clean deploy

在控制台发布成功后

然后进入到私服上的仓库中,看一下确实存在刚刚发布的项目

4.上传第三方jar包

然后点Select Artifact(s) for Upload按钮选择要上传的jar包,再点 add Arifact

最后点 Upload Artifact(s)

上传成功后查看

参考

http://blog.csdn.net/xiaoreqing/article/details/51352751

http://www.cnblogs.com/luotaoyeah/p/3817465.html

maven--私服的搭建(Nexus的使用)的更多相关文章

  1. (转)搭建Maven私服(使用Nexus)

    搭建私服可以做什么? 1.如果公司开发组的开发环境全部内网,这时如何连接到在互联网上的Maven中央仓库呢? 2.如果公司经常开发一些公共的组件,如何共享给各个开发组,使用拷贝方式吗?如果这样,公共库 ...

  2. 搭建Maven私服(使用Nexus)

    搭建私服能够做什么? 1.假设公司开发组的开发环境所有内网.这时怎样连接到在互联网上的Maven中央仓库呢? 2.假设公司常常开发一些公共的组件.怎样共享给各个开发组.使用拷贝方式吗?假设这样,公共库 ...

  3. maven私服的搭建

    前言: 为什么要有maven私服? 当我们在公司开发时,如果每个程序员都需要连接外网去下载maven的jar包,当同时开发时,就会造成网络资源浪费,因此,maven提出了私服的概念,当公司内部程序员进 ...

  4. Docker中Maven私服的搭建

    为何用到Maven私服? 在实际开发中,项目中可能会用到第三方的jar.内部通讯的服务接口都会打入到公司的私服中. 我们从项目实际开发来看: 一些无法从外部仓库下载的构件,例如内部的项目还能部署到私服 ...

  5. 基于【 Docker】五 || maven私服环境搭建

    1.Maven  Nexus私服的原理 为了节省带宽和时间,在局域网内架设一个私有的仓库服务器,用其代理所有外部的远程仓库.当本地Maven项目需要下载构件时,先去私服请求,如果私服没有,则再去远程仓 ...

  6. 搭建nexus私服(maven)

    这里提供nexus的直接下载页面的链接: https://www.sonatype.com/download-oss-sonatype maven获取依赖jar包是从中央仓库获取,但很莫名的出现jar ...

  7. Linux下搭建maven私服Nexus 3.2.1-01

    1. 私服介绍私服是指私有服务器,是架设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构建.有了私服之后,当 Maven 需要下载构件时,直接请求私服,私服上存在则下载到本地仓库:否则, ...

  8. docker 搭建maven 私服

    # 搜索镜像 docker search nexus; #拉取nexus镜像docker pull sonatype/nexus; #运行 -id 创建守护式容器--privileged=true 授 ...

  9. 掌握 Maven 私服

    前言 在 Java EE 开发中,我们使用 Maven 构建工具主要来管理项目的第三方库的依赖,以及公司内部其他项目服务的依赖.因此 Maven 私服就是必不可少的一环,本文主要对 Maven 私服的 ...

  10. Maven知识记录(一)初识Maven私服

    Maven知识记录(一)初识Maven私服 什么是maven私服 私服即私有的仓库.maven把存放文件的地方叫做仓库,我们可以理解成我门家中的储物间.而maven把存放文件的具体位置叫做坐标.我们项 ...

随机推荐

  1. 【USACO】milk3

    倒牛奶的问题, 开始看感觉跟倒水的问题很像, 想直接找规律, 写个类似于循环取余的代码. 但后来发现不行,因为这道题有三个桶,水量也是有限制的.只好用模拟的方法把所有的情况都试一遍. 建一个state ...

  2. JDK1.7 ConcurrentHashMap 源码浅析

    概述 ConcurrentHashMap是HashMap的线程安全版本,使用了分段加锁的方案,在高并发时有比较好的性能. 本文分析JDK1.7中ConcurrentHashMap的实现. 正文 Con ...

  3. Android实现高仿QQ附近的人搜索展示

    本文主要实现了高仿QQ附近的人搜索展示,用到了自定义控件的方法 最终效果如下 1.下面展示列表我们可以使用ViewPager来实现(当然如果你不觉得麻烦,你也可以用HorizontalScrollVi ...

  4. Ubuntu配置java环境变量

    参考文章: http://www.cnblogs.com/BigIdiot/archive/2012/03/26/2417547.html 方法1:修改/etc/profile 文件所有用户的 she ...

  5. phpStorm支持CodeIgniter代码提示/自动完成

    下载这个文件phpstorm-ci-ac 或者去github下载解压里面的三个文件到ci根目录下然后找到这三个文件 system\core\Controller.phpsystem\core\Mode ...

  6. C++primer学习笔记(四)——Chapter 6

    6.1  Function Basics 一.函数的构造 type functionName( parameters list) statement 1.首先格式如上,一个函数一定要有返回值的类型ty ...

  7. java实例--海盗的最优方案

    package unit4; public class Pirate{ private String name; private int[] schemes; private int index; p ...

  8. Android 编程下如何修改 jar 文件的包名

    首先我们要说说为什么要修改 jar 文件的包名,jar 包我们会非常高频率的使用,尤其是用一些其他三方库的时候,往往把 java 代码打包成 jar 文件,方便项目依赖使用.笔者在开发过程中遇到过一些 ...

  9. Ajax 学习之获取服务器的值

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  10. 阿里云ECS(云服务器)之产品简介

    参考阿里产品文档:https://docs.aliyun.com/?spm=5176.100054.3.1.ywnrMX#/pub/ecs/product-introduction/concept