搭建自己的maven私服 必过
教你一步一步搭建自己的maven私服
一、 应用场景
有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网里找一台有外网权限的机器,搭建nexus私服,然后开发人员连到这台私服上,这样的话就可以通过这台搭建了nexus私服的电脑访问maven的远程仓库。
如果某个IP地址恶意的下载中央仓库内容,例如全公司100台机器使用同一个IP反复下载,这个IP(甚至是IP段)会进入黑名单,因此稍有规模的使用Maven时,应该用Nexus架设私服。总归主要是两点:
1、自己maven私服更容易维护,公司开发从maven私服迁出jar到本地仓库更快
2、有些公司未开放外网给开发人员
一、下载nexus
地址:https://sonatype-download.global.ssl.fastly.net/nexus/oss/nexus-2.14.2-01-bundle.zip
二、启动服务
解压nexus-2.14.2-01-bundle.zip
在bin/jsw下有不同的版本,这里我选择window 64位操作系统的版本。
console-nexus.bat 是以命令窗口的形式启动,关闭后服务停止
install-nexus.bat 是设置开机启动,在服务中可以看成到该服务为开机自动启动(推荐使用这种方式启动)
stop-nexus.bat 是停止服务
uninstall-nexus.bat 是卸载nexus

三、服务配置
启动后输入:http://localhost:8081/nexus 进入在右上角Login登录,初始用户名:admin 密码:admin123 确定你的8081端口没有被占用
1.配置参数,将Download Remote Indexes 设置为true

2、添加第三方jar包
2.1、选择和填写参数(groupId、artifactId、version)都要填写

2.2、选择上传的jar包

3.坑来了 如果你不想每个jar包都手动上传 添加到maven私服的话 这一步必做

四、项目调用方法
1、配置maven的settings.xml文件
1.1、设置jar包保存的本地目录

1.2、设置你搭建的私服地址 注意要在节点mirrors里边
<mirror>
<id>central</id>
<mirrorOf>*</mirrorOf> <!-- * 表示让所有仓库使用该镜像-->
<name>central-mirror</name>
<url>http://192.168.1.73:8081/nexus/content/groups/public/</url>
</mirror>

maven私服到这就搭建完成了 但是私服上的jar需要你一个一个手动添加 如果想自动将jar包和项目包发布到maven私服上 请继续往下看
五、配置maven setting
1.在setting.xml文件中增加用户名和密码配置(特别注意这里的ID、要在server节点中)
<servers>
<!-- 用于发布正式版本 -->
<server>
<id>maven-repository-releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<!-- 用于发布快照版本 -->
<server>
<id>maven-repository-snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>

六、配置项目的pom.xml
1.注意要在 project节点中 注意这里有坑:上图setting.xml中server节点的id是什么 下图pom.xml中repository节点中的id就是什么
<distributionManagement>
<repository>
<!-- 这里的ID要和setting的id一致 -->
<id>maven-repository-releases</id>
<url>http://127.0.0.1:8081/nexus/content/repositories/thirdparty/</url>
</repository>
<!--这是打成快照版本的配置,如果不用这个snapshotRepository标签,打包失败,会报权限问题 -->
<snapshotRepository>
<id>maven-repository-snapshots</id>
<url>http://127.0.0.1:8081/nexus/content/repositories/thirdparty</url>
</snapshotRepository>
</distributionManagement>

七、将项目发布到maven私服上
1.右键项目 run as → maven build 输入deploy → run


可以看到 项目已经发布到我们搭建的maven中了。OK结束 如有问题欢迎评论或私信!

搭建自己的maven私服 必过的更多相关文章
- Centos7 搭建最新 Nexus3 Maven 私服
		Maven 介绍 Apache Maven 是一个创新的软件项目管理和综合工具.Maven 提供了一个基于项目对象模型(POM)文件的新概念来管理项目的构建,可以从一个中心资料片管理项目构建,报告和文 ... 
- Linux 下搭建 Sonatype Nexus Maven 私服
		一.为什么需要搭建mave私服 如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方的Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下 载构件无疑加大了仓库的 ... 
- maven私服搭建(centOS6.5)
		maven的好处和私服的应用本文不赘述,私服搭建如下: MAVEN 私服搭建(centOS 6.5 环境) 1. 准备环境,搭建centOS6.5系统环境,略 2. 准备对应的软件包如下: A. ... 
- window   Maven私服搭建——nexus
		注:本文来源于 <window Maven私服搭建--nexus> Maven私服搭建--nexus 1.下载nexus https://www.sonatype.com/downlo ... 
- (转)搭建Maven私服(使用Nexus)
		搭建私服可以做什么? 1.如果公司开发组的开发环境全部内网,这时如何连接到在互联网上的Maven中央仓库呢? 2.如果公司经常开发一些公共的组件,如何共享给各个开发组,使用拷贝方式吗?如果这样,公共库 ... 
- 搭建Maven私服(使用Nexus)
		搭建私服能够做什么? 1.假设公司开发组的开发环境所有内网.这时怎样连接到在互联网上的Maven中央仓库呢? 2.假设公司常常开发一些公共的组件.怎样共享给各个开发组.使用拷贝方式吗?假设这样,公共库 ... 
- 【我的Android进阶之旅】快速创建和根据不同的版本类型(Dev、Beta、Release)发布Android 开发库到Maven私服
		前言 由于项目越来越多,有很多公共的代码都可以抽取出一个开发库出来传到公司搭建好的Maven私服,以供大家使用. 之前搭建的Maven仓库只有Release和Snapshot两个仓库,最近由于开发库有 ... 
- 使用mvn deploy命令将本地jar包上传到maven私服
		记录一下,以后少走弯路 前提:已经搭建好nexus maven私服,地址192.168.110.240:9091 在maven的setting.xml中找到<mirrors></mi ... 
- Maven知识记录(一)初识Maven私服
		Maven知识记录(一)初识Maven私服 什么是maven私服 私服即私有的仓库.maven把存放文件的地方叫做仓库,我们可以理解成我门家中的储物间.而maven把存放文件的具体位置叫做坐标.我们项 ... 
随机推荐
- 笔记:Spring Cloud Feign 其他配置
			请求压缩 Spring Cloud Feign 支持对请求与响应进行GZIP压缩,以减少通信过程中的性能损耗,我们只需要通过下面二个参数设置,就能开启请求与响应的压缩功能,yml配置格式如下: fei ... 
- C++标准库vector类型的使用和操作总结
			vector是一种类型对象的集合,它是一种顺序容器,容器中的所有对象必须都是同一种类型.想了解顺序容器的更多内容:C++顺序容器知识总结.vector的对象是可以动态生长的,这说明它在初始化时可以不用 ... 
- [css 揭秘]:CSS揭秘 技巧(二):多重边框
			我的github地址:https://github.com/FannieGirl/ifannie/ 源码都在这上面哦! 喜欢的给我一个星吧 多重边框 问题:我们通常希望在css代码层面以更灵活的方式来 ... 
- mysqldump 备份脚本
			#!/bin/bash DUMP=/usr/bin/mysqldump OUT_DIR=/home/mysql LINUX_USER=root DB_NAME=snale DB_USER=root D ... 
- Oracle的用户,权限以及角色
			一.用户 1.创建用户 创建用户u密码为aa. SQL> create user u identified by aa; 2.为用户赋予权限 这个用户还不能连接数据库,必须为其赋予一些权限才可以 ... 
- node 基础精简
			Node 创建node应用 引入require模块 var http = require("http"); 创建服务器 http.createServer() 绑定端口: ... 
- 四则运算题目生成(python版)
			四则运算题目生成-基于控制台 项目托管在码云:飞机票 需求分析 根据控制台提示信息,输入题目生成相关配置参数 题目生成数量 数字范围 式子中是否有分数 .... 程序支持 10000 题目生成 题目与 ... 
- vue计算属性详解——小白速会
			一.什么是计算属性 模板内的表达式非常便利,但是设计它们的初衷是用于简单运算的.在模板中放入太多的逻辑会让模板过重且难以维护.例如: <div id="example"> ... 
- 2017-2018-1 Java演绎法 第四五周 作业
			团队任务:撰写<需求规格说明书> 团队组长:袁逸灏 本次编辑:刘伟康 流程.分工.比例 (比例按照任务的费时.难度和完成情况估算) 流程 确定任务 -→ 分配任务 -→ 各组员完成各自任务 ... 
- win7 Anaconda 安装 scrapy模块
			之前用了很多方法,都安装不成功,今天终于成功了..说下方法.. anaconda的清华镜像:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ ... 
