zoukankan      html  css  js  c++  java
  • Ubuntu server下搭建Maven私服Nexus

      Ubuntu server下搭建Maven私服Nexus

      Maven私服Nexus的作用,主要是为了节省资源,在内部作为maven开发资源共享服务器来使用。

      

      1、下载

      通过root用户进去Ubuntu server

      $  cd /opt

      $  wget http://download.sonatype.com/nexus/oss/nexus-2.10.0-02-bundle.tar.gz

      

      2、启动

      环境准备,启动nexus,必须先完成JDK环境的配置。

      $  cd /opt/

      $  tar -zxvf nexus-2.10.0-02-bundle.tar.gz

      $  cd /opt/nexus-2.10.0-02/bin

      $  vi nexus

      在启动文件nexus中增加nexus的启动用户,否则没权限启动,将报错如下:

      WARNING - NOT RECOMMENDED TO RUN AS ROOT

      If you insist running as root, then set the environment variable RUN_AS_USER=root before running this script

      所以要解决此问题,需要在启动文件nexus,加上RUN_AS_USER=root,如图所示

      

      保存退出之后,即可启动nexus,命令如下:

      $  ./nexus start  

      Starting Nexus OSS...
      Started Nexus OSS.

      表示启动成功,访问地址:http://ip:8081/nexus

      3、配置nexus

      登录nexus,右上角Log In,默认登录用户名密码:admin/admin123

      登录之后,我们可以点击左边菜单栏Repositories进入详细配置

      可以自己重新创建一个私服配置,这里我们用系统在带的Public Repositories

      

      关于仓库的类型介绍  

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

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

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

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

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

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

      但是需要将其他几个代理的库配置映射到Public中,分别将Apache Snapshots、Central、Codehaus Sanpshots下Download Remote Indexes选项选择【true】,保存即可,默认是false,如下图

      

      把将类型为Proxy的库Apache Snapshots、Central、Codehaus Sanpshots配置到Public Repositories下,如下图:

      

      然后分别将Apache Snapshots、Central、Codehaus Sanpshots更新Index,在每一个库上面右键操作Repair Index

      

      最后将Public Repositories操作Repair Index

      然后接可以测试maven仓库了。

      4、远程测试maven仓库

      在项目中,引用maven仓库。则需要项目的pom.xml文件中添加如下:  

    <repositories>
        <repository>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
            <id>Public</id>
            <name>Public Repositories</name>
         <url>http://192.168.10.50:8081/nexus/content/groups/public/</url>
        </repository>
    </repositories>                

      然后执行maven下载依赖jar,检测是否下载成功~在私服上,通过左边的Artifact Search 搜索窗口,查看jar包是否在私服下载成功。

      另外,通常我们是修改本地的maven安装目录下的配置文件setting.xml,将本地仓库更换成私服仓库地址,保证本客户端上所有的项目都将使用私服,配置setting.xml如下:

      在<profiles></profiles>加入  

      <profile>
        <id>env-dev</id>
        <repositories>
          <repository>
            <id>Public</id>
            <name>Public Repositories</name>
            <url>http://192.168.10.50:8081/nexus/content/groups/public</url>
            <snapshots>
              <enabled>true</enabled>
            </snapshots>
            <releases>
              <enabled>true</enabled>
            </releases>
          </repository>
        </repositories>
      </profile>

      并在</profiles>之后中加入  

    <activeProfiles>
        <activeProfile>env-dev</activeProfile>        
    </activeProfiles>

      新建项目,构建并测试

      

      5、三方jar包入maven私服

      比如 有些第三方jar包,在maven中心仓库没有,这个时候就需要手动在本地将jar上传上去,以供本地其他用户使用,简单截图介绍

      

      

  • 相关阅读:
    安全编码1
    VPP tips
    VPP概述汇总
    C语言安全编码摘录
    TCP-proxy
    Scipy Lecture Notes学习笔记(一)Getting started with Python for science 1.4. Matplotlib: plotting
    Scipy Lecture Notes学习笔记(一)Getting started with Python for science 1.3. NumPy: creating and manipulating numerical data
    Scipy Lecture Notes学习笔记(一)Getting started with Python for science 1.2. The Python language
    Scipy Lecture Notes学习笔记(一)Getting started with Python for science 1.1. Python scientific computing ecosystem
    25马5跑道,求最快的五匹马的需要比赛的次数
  • 原文地址:https://www.cnblogs.com/candle806/p/4076325.html
Copyright © 2011-2022 走看看