第一步:使用ubunto下载安装nexus  并打开登录进入到nexus管理页面,默认账号为 admin  密码在 admin.password 中,首次登录会让你重新修改密码

第二步  配置自己本地Maven的settings.xml文件,

<services>
<server>
<id>nexus-releases</id>
<username>admin</username>
<password>admin123</password>
</server> <server>
<id>nexus-snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</services>

第三步  以一个基础的公共ssm项目为模板,创建并上传私服仓库的依赖,需要在本地项目的pom.xml中加上以下配置

<distributionManagement>
<repository>
<id>nexus-releases</id>
<name>Nexus Release Repository</name> <-- 这里的url地址换成登录进入之后换成自己私服仓库的ip地址 -->
<url>http://192.168.2.135/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>nexus-snapshots</id>
<name>Nexus Snapshot Repository</name>
  <-- 这里的url地址换成登录进入之后换成自己私服仓库的ip地址 -->
  <url>http://192.168.2.135/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>
<repositories>
<repository>
<id>nexus</id>
<name>Nexus Repository</name>
     <-- 这里的url的ip换成自己私服仓库的ip -->
<url>http://127.0.0.1:8081/repository/maven-public/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>nexus</id>
<name>Nexus Plugin Repository</name>
     <-- 这里的url的ip地址换成自己私服仓库的ip -->
<url>http://127.0.0.1:8081/repository/maven-public/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</pluginRepository>
</pluginRepositories>

注意!!!!:我们的公共部分的依赖和工具类需要打成jar包上传到私服仓库,才可以被其他项目引用,不能打成war包

第四步  项目pom配置好之后,执行mvn deploy  或者点击 maven  ->   lifecycle中的deploy   这样自己的私服仓库就上传创建成功,使用的是快照版 (正式版为releases)

     或者执行   mvn  deploy命令

私服建立好之后,返回到自己的nexus   按照以下步骤就可以看到自己的私服仓库了

我们的私服仓库就在   maven-snapshots   中,生成的jar包就可以被其他项目引用,如下图:

这里的上面的大版本是不会变的,这样的话下次有更新修改的时候不用再去改大版本的命名,  可以自动拉取最近的依赖坐标

结束:这样一个完整的私服仓库  创建成功,下次更新,直接在公共项目中执行  mvn  deploy命令就可以了

nexus私服仓库的使用:

新建一个ssm框架项目,在pom.xml文件中 配置以下信息:

注意!!!:由于使用的是我们的私服仓库,我们需要在idea中设置一下maven,设置为自动更新最新的snapshot:

<repositories>
<repository>
<!--这里的id要和maven中的settings.xml的id一致,这样才能识别依赖做坐标-->
<id>nexus-snapshots</id>
<name>Nexus Repository</name>
<url>http://10.31.160.35/repository/maven-public/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
</repositories>

导入私服仓库的依赖坐标:

<dependency>
<groupId>com.qfedu</groupId>
<artifactId>my-shop</artifactId>
  <-- 这里的坐标直接导入上面基础ssm模板的坐标-->
<version>1.0-SNAPSHOT</version>
</dependency>

这样新建项目就会自动导入私服仓库中的所有依赖,并且可以使用作为私服仓库中的公共工具类或者其他任何类,

nexus私服仓库搭建以及项目引用的更多相关文章

  1. Maven仓库搭建--nexus私服

    Maven仓库搭建--nexus私服(Linux环境) Maven仓库简介 Maven仓库分为本地仓库.远程仓库.私服.本文重点介绍私服的使用方法. 下载安装包 网址:http://www.sonat ...

  2. 在pom.xml中使用distributionManagement将项目打包上传到nexus私服

    本文介绍 如何在pom.xml中使用distributionManagement将项目打包上传到nexus私服 1.pom.xml文件添加distributionManagement节点 <!- ...

  3. ava Maven项目之Nexus私服搭建和版本管理应用

    目录: Nexus介绍 环境.软件准备 Nexus服务搭建 Java Maven项目版本管理应用 FAQ 1.Nexus介绍 Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维 ...

  4. Maven发布项目到Nexus私服中 (发布jar包)

    目录 1 需求说明 2 实现步骤 2.1 Maven服务的setting.xml文件 2.2 项目的pom.xml文件 2.3 发布项目 1 需求说明 开发完项目后, 将项目版本发布到Nexus私服中 ...

  5. Maven项目的打包发布到Nexus私服和服务器

    1.编写pom文件如下: <build> <plugins> <plugin> <groupId>org.apache.maven.plugins< ...

  6. Nexus 私服上传文件,并通过 Gradle 引用

    一.上传文件到 Nexus 1,进入 Nexus 仓库界面 如果你电脑还没有使用 Nexus,需要先下载并启动 Nexus 私服. 在浏览器输入:http://127.0.0.1:8081/nexus ...

  7. 基于nexus私服配置项目pom.xml和maven settings.xml文件

    备注:搭建nexus私服请参考上一篇文章基于Docker搭建Maven私服Nexus,Nexus详解 一:将jar发送到nexus私服务器 1.pom.xml文件添加配置 pom.xml文件中的这个版 ...

  8. Java Maven项目之Nexus私服搭建和版本管理应用

    转载自:https://cloud.tencent.com/developer/article/1010603 1.Nexus介绍 Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓 ...

  9. 上传jar包到nexus私服

    摘要 通过网页和maven两种方式,上传本地的jar到nexus私服,以及引用jar时,自动引用依赖 1通过网页上传 这种方法只是上传了jar包.通过maven引用当前jar,不能取得jar的依赖   ...

随机推荐

  1. go中字符类型的使用小结

    示例 // 字符类型的用法 package main import ( "fmt" "unsafe" ) func main() { // 未指定类型并赋值字符 ...

  2. C#编程--第二天

    一.变量:变量先声明,后赋值,再使用. 语法:变量类型 变量名=值: 变量类型: 分为基本数据类型和引用类 基本数据类型:整型.浮点型.字符型.布尔型 引用类:字符串.日期时间.枚举类型.结构类型 i ...

  3. ajax基本原理实现

    function ajax(method,url,data,success){ try{ var xhr=new XMLHttpRequest(); }catch(e){ xhr=new Active ...

  4. sql datetime类型数据如果进行模糊查询

    select * from Table1 where CONVERT(nvarchar(50),CreateTime,120) like '%2019'

  5. 【转载】linux查看端口状态相关命令

    具体命令移步:https://www.cnblogs.com/cxbhakim/p/9353383.html

  6. 【记录】linux 文件权限的查看和修改

    从上图可以看出每个文件权限与类型都是不一样的,如果对各个字母表达的含义不了解,那么看的真是一脸懵逼. 别急,具体解释如下: d rwx  rwx  rwx -  rwx  r--  rw- 第一列含义 ...

  7. Welcome to MarkdownPad 2

    Welcome to MarkdownPad 2 MarkdownPad is a full-featured Markdown editor for Windows. Built exclusive ...

  8. 微信小程序 textarea的placeholder层级过高 在弹层之上 bug解决方法

    微信小程序textarea的placeholder的层级一直都是一个神坑, 我们是没有办法将我们的弹层加大层级去盖过placeholder的, 所以要解决这个问题只能从另外的角度找思路 我的思路是 : ...

  9. oracle 的使用

    一. docker 模式下进入数据库 ubuntu@jiang:~$ sudo docker ps -a sudo: unable to resolve host jiang CONTAINER ID ...

  10. css 多行省略号兼容移动端

    浏览器兼容css样式 -webkit-line-clamp: ; display: -webkit-box; overflow: hidden; text-overflow: ellipsis; te ...