私服是什么

私服,私有服务器,是公司内部Maven项目经常需要的东东,不总结一下,不足以体现出重视。Nexus是常用的私用Maven服务器,一般是公司内部使用。下载地址是http://www.sonatype.org/nexus/go。默认端口8081,这里我选择最新版nexus-2.5.0-04。

常用功能

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

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

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

一般用到的仓库种类是hosted、proxy。Hosted代表宿主仓库,用来发布一些第三方不允许的组件,比如oracle驱动、比如商业软件jar包。Proxy代表代理远程的仓库,最典型的就是Maven官方中央仓库、JBoss仓库等等。如果构建的Maven项目本地仓库没有依赖包,那么就会去这个代理站点去下载,那么如果代理站点也没有此依赖包,就回去远程中央仓库下载依赖,这些中央仓库就是proxy。代理站点下载成功后再下载至本机。笔者认为,其实Maven这个自带的默认仓库一般情况下已经够大多数项目使用了。特殊情况时在配置新的仓库,指定url即可,一般熟悉ExtJS的人操作这个Nexus都没什么问题,单词不是很难,不明白的查查单词基本差不多。就是如果Sonatype公司对其做了国际化的处理就更好了。


hosted   类型的仓库,内部项目的发布仓库

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

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

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

proxy   类型的仓库,从远程中央仓库中寻找数据的仓库

group   类型的仓库,组仓库用来方便我们开发人员进行设置的仓库

maven项目索引

下载Maven项目索引,项目索引是为了使用者能够在私服站点查找依赖使用的功能

保存后后台会运行一个任务,点击菜单栏的Scheduled Tasks选项即可看到有个任务在RUNNING。 下载完成后,Maven索引就可以使用了,在搜索栏输入要搜索的项,就可以查到相关的信息。例如spring-core

就可以检索出它的相关信息,包括怎么配置依赖信息。我们要想使用这个私服仓库,先在项目pom中配置相关私服信息

指定仓库

[html] view plaincopy
  1. <repositories>
  2. <repository>
  3. <id>nexus</id>
  4. <name>nexus</name>
  5. <url>http://192.168.1.103:8081/nexus/content/groups/public/</url>
  6. <releases>
  7. <enabled>true</enabled>
  8. </releases>
  9. <snapshots>
  10. <enabled>true</enabled>
  11. </snapshots>
  12. </repository>
  13. </repositories>

指定插件仓库

[html] view plaincopy
  1. <pluginRepositories>
  2. <pluginRepository>
  3. <id>nexus</id>
  4. <name>nexus</name>
  5. <url>http://192.168.1.103:8081/nexus/content/groups/public/</url>
  6. <releases>
  7. <enabled>true</enabled>
  8. </releases>
  9. <snapshots>
  10. <enabled>true</enabled>
  11. </snapshots>
  12. </pluginRepository>
  13. </pluginRepositories>

这样只有本项目才在私服下载组件
这样这个Maven项目构建的时候会从私服下载相关依赖。当然这个配置仅仅是在此项目中生效,对于其他项目还是不起作用。如果相对Maven的其他项目也生效的话。需要修改全局的settings.xml文件。

修改settings.xml为

追加激活profile

[html] view plaincopy
  1. <activeProfiles>
  2. <activeProfile>central</activeProfile>
  3. </activeProfiles>

之后所有本机的Maven项目就在私服下载组件。(这样比较好)

项目的发布

[html] view plaincopy
  1. <distributionManagement>
  2. <repository>
  3. <id>user-release</id>
  4. <name>User Project Release</name>
  5. <url>http://192.168.1.103:8081/nexus/content/repositories/releases/</url>
  6. </repository>
  7. <snapshotRepository>
  8. <id>user-snapshots</id>
  9. <name>User Project SNAPSHOTS</name>
  10. <url>http://192.168.1.103:8081/nexus/content/repositories/snapshots/</url>
  11. </snapshotRepository>
  12. </distributionManagement>

注意配置了还是发布项目到私服失败,原因为没有权限,会出现401错误码,原因就是权限不够。


配置权限在settings.xml
注意Respository中的id一定要和server下的id一致,切记!!否则出现权限问题。

然后运行发布

clean deploy

在控制台发布成功

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

宿主库——3rd party

最后点击上传

maven仓库--私服(Nexus的配置使用)相关推荐

  1. 使用Nexus搭建Maven仓库私服的权限配置心得

    最近在学习Maven,学习到使用Nexus搭建私服,通过Nexus的权限机制可以实现较细粒度的权限控制,这对组织内部的团队开发很有帮助.通过实验,我总结了以下一些经验,可以实现一些权限控制的需求,在此 ...

  2. Nexus 3.X(Maven仓库私服)仓库迁移与备份

    注意修改端口号:根目录/etc/nexus-default.properties,application-port=端口号 Linux 仓库迁移 Nexus的构件仓库都保存在sonatype-work ...

  3. 搭建maven的私服nexus

    1.搭建maven的私服     http://www.sonatype.org/nexus/downloads/     搭建私服是团队开发的基础,才能实现组内或者组间的依赖共享,要搭建私服使用工具 ...

  4. Maven Nexus3 私服搭建、配置、项目发布(docker方式)

    maven nexus私服搭建 访问nexus3官方镜像库,选择需要的版本下载:Docker Nexus docker pull sonatype/nexus3:3.49.0 创建数据目录并赋权 su ...

  5. maven仓库阿里云镜像配置

    我们每次新建一个maven项目的时候,加上pom.xml配置时,如果你没有配置本地仓库,maven会去中央仓库去加载jar包,那样速度真的是异常的慢啊,并且每次update maven项目的,速度也是 ...

  6. maven仓库的安装与配置

    1.这是我所安装的版本,解压到没有中文空格特殊字符的目录下 2.maven 的使用是在jdk的基础上,所以电脑必须有jdk,没有安装配置jdk的可以先去配置一下,配置完的我们可以去配置配置MAVEN_ ...

  7. maven仓库 阿里云最新配置 https

    maven镜像仓库替换成阿里云镜像仓库 安装好maven后,更新maven仓库的速度特别慢,或有有时候直接出现假死状态. 解决方案 在本地的maven的setting配置文件中添加阿里云镜像文件地址 ...

  8. maven学习- 私服nexus搭建

    一.到nexus官网下载最新版 1.1 下载地址:http://www.sonatype.org/downloads/nexus-latest-bundle.zip (目前最新版本是2.7.2-03) ...

  9. 019.nexus搭建docker镜像仓库/maven仓库

    一.安装docker CE 参考docker doc https://docs.docker.com/install/linux/docker-ce/centos/ 二.docker启动nexus3 ...

  10. maven 私服nexus的公共仓库汇总

    先汇总一下maven的私服nexus 的公共仓库,供以后备用 1 codehaus仓库 网址:https://nexus.codehaus.org/snapshots/ 2 jboss_public_ ...

最新文章

  1. 使用 HttpServerUtility.Transfer 方法在同一应用程序的页面间重定向
  2. 一块钱哪里去了?--java浮点型背后的故事
  3. java:蓝桥杯 矩阵乘法
  4. 集赞有礼!进击吧! Blazor !第六期 企业内部应用建设实战
  5. 学生物的女朋友都能看懂的哈希表总结!
  6. 华为系列设备优先级总结(二)
  7. tornado Python mysql_python tornado mysql 内容管理后台部署
  8. 计算机上的符号在哪找,像w的那个符号在哪里可以找到?word文档
  9. mac 右键 启动终端
  10. 主窗口(10):【类】QWidgetAction [官翻]
  11. 华为最新5G手机供应商名单来了。。。
  12. 【MAX7800羽毛板更新固件及下载bug修复】
  13. 微信小程序正式上线,服务端请求必须HTTPS
  14. SpringAMQP-Basic Queue、Work Queue、Fanout、Direct、Topic
  15. 金九银十北漂记第2篇:《Java程序员面试宝典》读书笔记
  16. 澳大利亚公司称与中石油达成巨额售气协议
  17. 如何在Ubuntu Linux上安装Steam游戏平台
  18. ExFAT格式硬盘在Mac上和win上未能识别
  19. 洛谷 [P3480] KAM-Pebbles
  20. 如何辨别物联网卡的真伪

热门文章

  1. 阶段1 语言基础+高级_1-3-Java语言高级_08-JDK8新特性_第2节 Stream流式思想概述_1_使用传统的方式,遍历集合,对集合进行过滤...
  2. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_08 转换流_4_OutputStreamWriter介绍代码实现...
  3. SEO HTML语义化
  4. 爬虫 requests模块的其他用法 抽屉网线程池回调爬取+保存实例,gihub登陆实例
  5. bzoj1043 下落的圆盘
  6. 理解Python中的with…as…语法
  7. 一段经典的 Java 风格程序 ( 类,包 )
  8. 【JOURNAL】《题虾壶》
  9. 宠物商城后台管理系统(springMVC+Mybatis+数据库)
  10. servlet三种方式实现servlet接口