nexus_nexus3 中文 - CSDN
精华内容
参与话题
  • 配置maven私服nexus

    万次阅读 多人点赞 2016-07-13 21:26:22
    1、Nexus简介1.1 Nexus概述Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。利用Nexus你可以只在一个地方就能够完全控制访问和部署在你所维护仓库中的每个Artifact。Nexus是...

    1、Nexus简介

    1.1 Nexus概述

    Nexus是一个强大的Maven仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问。

    利用Nexus你可以只在一个地方就能够完全控制访问和部署在你所维护仓库中的每个Artifact。

    Nexus是一套“开箱即用”的系统不需要数据库,它使用文件系统加Lucene来组织数据。Nexus使
    用ExtJS来开发界面,利用Restlet来提供完整的REST APIs,通过m2eclipse与Eclipse集成使用。

    Nexus支持WebDAV与LDAP安全身份认证。

    Nexus是一个Maven仓库管理器,用来搭建私有仓库服务器。建立公司/组织的私有仓库的的好处
    是便于管理,节省公网带宽,利用内网下载依赖项速度快,还有一个非常有用的功能就是能有效管
    理内部项目的SNAPSHOT版本,实现各个模块间的共享.

    1.2 Maven仓库

    1.2.1 仓库结构图

    这里写图片描述

    1.2.2 本地仓库

    本地仓库默认是用户目录下的.m2\repository,用户级的配置文件settings.xml也放在这里。

    这里写图片描述

    这里写图片描述

    1.2.3 远程仓库

    1.3.1 远程仓库概述

    maven的远程仓库有多种存在形式,中央仓库,其他远程仓库,镜像,私服

    1.3.2 中央仓库

    中央仓库是默认的远程仓库,如果不做任何特殊配置那么将会从中央仓库下载依赖,这在
    $M2_HOME/lib/maven-model-builder-3.0.4.jar里的org/apache/maven/model/pom-4.0.0.xml里做了指定,如下:

    <repositories>
    <repository>
    <id>central</id>
    <name>Central Repository</name>
    <url>http://repo.maven.apache.org/maven2</url>
    <layout>default</layout>
    <snapshots>
    <enabled>false</enabled>
    </snapshots>
    </repository>
    </repositories>

    1.3.3 镜像

    镜像及将的maven依赖请求转发至相应服务器,配置如下:

    <mirror>
        <id>mirrorId</id>
        <mirrorOf>repositoryId</mirrorOf>
        <name>Human Readable Name for this Mirror.</name>
        <url>http://my.repository.com/repo/path</url>
    </mirror>

    这里即是将仓库id为repositoryId的所有请求转发至http://my.repository.com/repo/path镜像服务器镜像更为常用的作法是结合私服,如下配置:

    <mirror>
        <id>mirrorId</id>
        <mirrorOf>*</mirrorOf>
        <name>Human Readable Name for this Mirror.</name>
        <url>http://my.repository.com/repo/path</url>
    </mirror>

    这里即是将对所有仓库的请求转发至私服http://my.repository.com/repo/path

    1.3.4 私服

    私服一般采用nexus部署

    1.3.5 添加其他远程仓库

    1、添加一个其他的远程库只需在项目的pom.xml文件中添加以下配置即可

    <repositories>
        <repository>
            <id>jboss</id>
            <name>JBoss Repository</name>
            <url>http://repository.jboss.org/nexus/content/groups/public/</url>
            <snapshots>
            <enabled>false</enabled>
            </snapshots>
            <releases>
                <enabled>true</enabled>
            </releases>
            <layout>default</layout>
        </repository>
    </repositories>

    • snapshots false表示关闭jboss远程仓库的snapshots版本下载
    • releases true表示打开jboss远程仓库的release版本下载

    2、测试下jboss仓库是否配置正确,添加一个jboss仓库独有的依赖即可,这里选用xom1.2,配置
    如下

    <dependency>
        <groupId>xom</groupId>
        <artifactId>xom</artifactId>
        <version>1.2</version>
    </dependency>

    3、发现下载成功即可
    4、远程服务器的验证,只需在settings.xml添加如下代码即可

    <server>
        <id>deploymentRepo</id>
        <username>repouser</username>
        <password>repopwd</password>
    </server>

    注:id要与配置的远程服务器id对应比如jboss.

    2、安装与配置Nexus

    2.1 安装与基本配置

    1.下载安装包
    从官网下载最新的nexus安转包:http://www.sonatype.org/nexus/archived/
    本文下载的是nexus-2.11.2-06-bundle.tar.gz 版本
    然后 tar xzvf nexus-2.11.2-06-bundle.tar.gz 解压该安装包,解压后会出现这两个文件夹

    nexus-2.11.4-01
    sonatype-work

    这里写图片描述

    注:安装nexus,本地仓库默认的jar包存储位置是:/sonatype-work/nexus/storage/central。由于
    Central仓库占用存储较大,所以要注意存储位置。

    2.修改配置文件1:/home/nexus/nexus-2.11.4-01/conf/nexus.properties

    ………………
    # Sonatype Nexus
    # ==============
    # This is the most basic configuration of Nexus.
    # Jetty section
    # 配置端口信息
    application-port=8086
    application-host=0.0.0.0
    nexus-webapp=${bundleBasedir}/nexus
    #配置IP端口访问
    #http://192.168.10.56:8086/nexus/可修改为: /
    nexus-webapp-context-path=/nexus
    # Nexus section
    #配置work目录地址,Maven仓库JAR缓存地址,可修改其他地址eg:${bundleBasedir}/nexus-
    work/nexus
    nexus-work=${bundleBasedir}/../sonatype-work/nexus
    runtime=${bundleBasedir}/nexus/WEB-INF

    3:修改配置文件2:nexus-2.11.4-01/bin/nexus

    ………………
    #NEXUS_HOME=".."
    #如果目录改变配置,如果修改了运行路径
    NEXUS_HOME="/home/nexus/nexus-2.11.1-01"
    ……………………
    #RUN_AS_USER=
    #nexus启动用户
    RUN_AS_USER=jhd

    注意RUN AS USER一般不推荐设置为root。
    如果开始是以root用户安装 且设置了RUN AS USER为root启动。再去设置RUN AS USER用户的时候
    会出现一系列的错误,主要是由于权限限制可以使用
    sudo chmod -R a+x /usr/local/nexus 设置权限 (这里的目录是nexus的安装位置,例如我的
    sudo chmod -R a+x /home/software/nexus-2.11.2-06-bundle/)
    还需要设置下 /var/run/目录的权限 否则会出现pid无法写入的错误

    4.启动nexus服务:

    [root@CentOS-Slave1 bin]# ./nexus start
    ****************************************
    WARNING - NOT RECOMMENDED TO RUN AS ROOT
    ****************************************
    Starting Nexus OSS...
    Started Nexus OSS.

    如果启动成功通过访问用浏览器访问:http://ip:8086/nexus/ 会看到以下管理界面:

    这里写图片描述

    Nexus的默认用户名为admin 密码为admin123

    5.设置nexus开机启动:

    cp nexus /etc/init.d/
    chkconfig --add nexus
    chkconfig nexus on

    2.2 本地Maven使用Nexus

    1.maven使用本地库
    在maven的setting.xml中设置:(默认设置)

    <?xml version="1.0" encoding="UTF-8"?>
    <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
    
      <localRepository>C:/Users/xuliugen/.m2/repository</localRepository>
    
      <servers>
            <server>
                <id>releases</id>
                <username>admin</username>
                <password>admin123</password>
            </server>
            <server>
                <id>snapshots</id>
                <username>admin</username>
                <password>admin123</password>
            </server>
        </servers>
    
        <mirrors>
            <mirror>
                <id>UFindNexus</id>
                <mirrorOf>*</mirrorOf>
                <url>http://127.0.0.1:8081/nexus/content/groups/public/</url>
            </mirror>
        </mirrors>
    
        <profiles>
            <profile>
                <id>UFindNexus</id>
                <repositories>
                    <repository>
                        <id>UFindNexus</id>
                        <url>http://127.0.0.1:8081/nexus/content/groups/public</url>
                        <releases>
                            <enabled>true</enabled>
                            <updatePolicy>daily</updatePolicy>
                            <checksumPolicy>warn</checksumPolicy>
                        </releases>
                        <snapshots>
                            <enabled>true</enabled>
                            <checksumPolicy>fail</checksumPolicy>
                        </snapshots>
                    </repository>
                </repositories>
                <pluginRepositories>
                    <pluginRepository>
                        <id>UFindNexus</id>
                        <url>http://127.0.0.1:8081/nexus/content/groups/public</url>
                        <releases>
                            <enabled>true</enabled>
                            <checksumPolicy>warn</checksumPolicy>
                        </releases>
                        <snapshots>
                            <enabled>true</enabled>
                            <checksumPolicy>fail</checksumPolicy>
                        </snapshots>
                    </pluginRepository>
                </pluginRepositories>
            </profile>
        </profiles>
    
        <activeProfiles>
            <activeProfile>UFindNexus</activeProfile>
        </activeProfiles>
    
    </settings>

    2、如果只想在某个项目中使用本地库则在该项目的pom.xml中

    <?xml version="1.0" encoding="UTF-8"?>
    <settings>
        <mirrors>
            <mirror>
                <!--This sends everything else to /public -->
                <id>nexus</id>
                <mirrorOf>*</mirrorOf>
                <!-- <url>http://repo1.maven.org/maven2/</url> -->
                <url>http://127.0.0.1:8086/nexus/content/groups/public</url>
            </mirror>
        </mirrors>
        <profiles>
            <profile>
                <id>nexus</id>
                <!--Enable snapshots for the built in central repo to direct -->
                <!--all requests to nexus via the mirror -->
                <repositories>
                    <repository>
                        <id>central</id>
                        <url>http://repo1.maven.org/maven2/</url>
                        <releases>
                            <enabled>true</enabled>
                        </releases>
                        <snapshots>
                            <enabled>true</enabled>
                        </snapshots>
                    </repository>
                </repositories>
                <pluginRepositories>
                    <pluginRepository>
                        <id>central</id>
                        <url>http://central</url>
                        <releases>
                            <enabled>true</enabled>
                        </releases>
                        <snapshots>
                            <enabled>true</enabled>
                        </snapshots>
                    </pluginRepository>
                </pluginRepositories>
            </profile>
        </profiles>
        <activeProfiles>
            <!--make the profile active all the time -->
            <activeProfile>nexus</activeProfile>
        </activeProfiles>
    </settings>

    2.3 如何部署到远程Nexus

    1、在项目文件Pom中添加

    <distributionManagement>
        <repository>
            <id>releases</id>
            <name>Nexus Release Repository</name>
            <url>http://ip:8081/nexus/content/repositories/releases/</url>
        </repository>
        <snapshotRepository>
            <id>snapshots</id>
            <name>Nexus Snapshot Repository</name>
            <url>http://ip:8081/nexus/content/repositories/snapshots/</url>
        </snapshotRepository>
    </distributionManagement>

    其中id为在setting.xml文件中server所对应的id,一般为默认,无需修改

    2.4 验证安装结果

    1、在Idea中使用Maven Termianl(快捷键:Alt+F12)
    执行命令:

    mvn clean
    mvn deploy

    如果在编译的时候还会执行test,请执行:

    mvn clean
    mvn install -D maven.test.skip=true

    可以看到Terminal中输出一下信息:
    这里写图片描述

    表示正将编译之后的jar上传到maven仓库中
    2、查看远程Nexus

    这里写图片描述

    这里写图片描述

    3、其他高级配置

    3.1 添加jboss 代理资源库

    先了解下nexus的资源库类型:

    • Hosted Repository - nexus本机的资源库(相当于nexus所在服务器硬盘上已经存在的jar、pom文件库)

    • Proxy Repository - 代理库,很多开源官方组织都在互联网上公布了Repository,供全世界的开发者使用,nexus中设置该类型的资源库后,其它使用nexus的开发者,表面上是在请求nexus服务器上的jar包,但nexus实质是背后是在请求这些互联网资源,首次会把服务器上没有的资源,从网上download到nexus服务器(以文件形式保存到硬盘上),然后再返回给开发者,下次再有同样的pom/jar请求时,直接从服务器硬盘上返回,不再请求互联网Repository Group - 资源组,比如我们有很多资源库:资源库A、资源库B…,可以把它们再成组合一个特殊的资源C,然后其它开发人员,在maven里配置资源C地址,这样maven在向资源C请求
      jar包里,实质会搜索资源A、资源B

    1、maven默认的官方资源库http://repo1.maven.org/maven2/,很多第三方的jar包没有,所以我再添加一个jboss的资源库

    2、点击左侧的Repositories,然后再点击右侧的Add,会弹出下拉菜单,选择Proxy Repository

    这里写图片描述

    3、接下来,参考下图填写:
    这里写图片描述

    • Respository ID这里填写:jboss-public-repository-group (可以自已改名字)
    • Respository Name这里填写:JBoss Public Maven Repository Group (可以自已改名字)
    • 其它项保持默认
    Remote Storage Location这里填写
    https://repository.jboss.org/nexus/content/groups/public-jboss/ (这是jboss公布的公开资
    源库)

    这里写图片描述

    3.2 如何将本地jar添加到Nexus中

    手动上传第三方jar包到nexus的步奏:
    1)按下图方式进行
    这里写图片描述

    2)按下图完成上传
    这里写图片描述

    3)点击保存完成
    这里写图片描述

    3.3 下载jboss eap 7.x的离线资源包

    1、首次使用nexus时,私服服务器上实质上没有任何jar包的缓存,所以第一次使用时,其实跟直接到互联网上下载没啥区别,只有后面再请求相同的jar包,服务器上才会有jar文件缓存,为了加快速度,我们可以直接上jboss官网下载离线资源包。
    官网下载地址(需要进行翻墙):https://www.jboss.org/products/eap/get-started/(null)

    这里写图片描述

    下载:Maven Repository (304mb)
    或者直接在linux使用进行下载:(版本为7.0)

    wget
    https://access.cdn.redhat.com/content/origin/files/sha256/c4/c4748ff06357795a93f4e
    4a4356807ffbce571afc803a4e5b798c25d2caf5343/jboss-eap-7.0.0.Alpha-maven-
    repository.zip?_auth_=1450331107_f186398691e2aae898896dacc16a001c

    2、然后解压到指定目录,建议放在 %nexus_home%\sonatype-work\nexus\storage\ 下:
    例如我的完整路径为:/home/xuliugen/software/nexus-2.11.2-06-bundle/sonatype-
    work/nexus/storage

    这里写图片描述

    3、然后add一个hosted repository,参考下图:
    这里写图片描述

    上图中的:Override Local Storage Location一ing根据实际填写2步中解压的文件,如果是Linux系统,请输入完整的路径,如:

    /home/xuliugen/software/nexus-2.11.2-06-bundle/sonatype-
    work/nexus/storage/boss-eap-7.0.0.Alpha-maven-repository

    4、查看安装结果
    这里写图片描述

    3.4 如何将repository设置为Public

    这里写图片描述

    如果没包括在组里,参考上图处理一下,然后保存。最后建议更新一下索引,参考下图:

    这里写图片描述

    3.5 使用OSChina作为Maven仓库代理

    1、点击添加Proxy Repository
    这里写图片描述

    2、设置配置
    其中远程地址如下:http://maven.oschina.net/content/groups/public/
    这里写图片描述

    其中ID和Name任意设置,Remote Location设置为
    http://maven.oschina.net/content/groups/public/
    点击save即可。
    3、在刚才添加的代理Repository上边点击右键,选择Update Index即可。

    这里写图片描述

    3.6 解决nexus下载maven索引的问题

    1、能正常访问browse remote,但是却没有看到任何jar文件
    这里写图片描述

    2、这是因为在:/home/xuliugen/software/nexus-2.11.2-06-bundle/sonatype-
    work/nexus/indexer/central-ctx目录下缺少nexus-maven-repository-index文件
    这里写图片描述

    所以需要下载该文件,
    下载地址:http://download.csdn.net/detail/lili72/5062374#comment(null)
    解压之后放在该目录下

    展开全文
  • nexus-3.20.1-01.zip

    2020-10-22 17:21:37
    Nexus全称Sonatype Nexus,是一种特殊的远程仓库,它是架在局域网内的仓库服务。 Maven访问远程仓库下载jar包是需要外网支持的,在不提供外网或者网速很慢的情况下,项目构建就会非常困难,所以很有必要在局域网内...
  • Nexus介绍

    万次阅读 2018-11-06 09:21:15
    Nexus介绍 转自:https://www.cnblogs.com/wincai/p/5599282.html 开始在使用Maven时,总是会听到nexus这个词,一会儿maven,一会儿nexus,当时很是困惑,nexus是什么呢,为什么它总是和maven一起被提到呢? 我们...

    Nexus介绍

    转自:https://www.cnblogs.com/wincai/p/5599282.html

    开始在使用Maven时,总是会听到nexus这个词,一会儿maven,一会儿nexus,当时很是困惑,nexus是什么呢,为什么它总是和maven一起被提到呢?

    我们一步一步来了解吧。

     一、了解Maven,Maven用来干什么呢

    1. 优秀的构建工具

    通过简单的命令,能够完成清理、编译、测试、打包、部署等一系列过程。同时,不得不提的是,Maven是跨平台的,无论是在Windows、还是在Linux或Mac上,都可以使用同样的命令。

    2. 依赖管理工具

    项目依赖的第三方的开源类库,都可以通过依赖的方式引入到项目中来。代替了原来需要首先下载第三方jar,再加入到项目中的方式。从而更好的解决了合作开发中依赖增多、版本不一致、版本冲突、依赖臃肿等问题。

    具体是怎么实现的呢?Maven通过坐标系统准确的定位每一个构件,即通过坐标找到对应的Java类库。

    3. 项目信息管理工具

    能够管理项目描述、开发者列表、版本控制系统地址、许可证等一些比较零散的项目信息。除了直接的项目信息,通过Maven自动生成的站点,以及一些已有的插件,还能够轻松获得项目文档、测试报告、静态分析报告、源码版本、日志报告等非常具有价值的项目信息。

    二、 Maven与Nexus

    这个问题从Maven的第二个用处说起,依赖管理,通过在Pom中指定坐标的形式将jar引入到项目中。那这个过程,要经历怎样一个流程呢?从哪里寻找jar?下载的jar放到哪里?

    将这个问题顺下来,就知道nexus和maven的关系了。

    从哪里找到jar?项目用到的jar又存放在哪里?这引出了仓库的概念,maven通过仓库来统一管理各种构件。Maven的仓库分为本地仓库和远程仓库。

    当Maven根据坐标寻找构件时,它首先会查看本地仓库,如果本地仓库存在此构件,则直接使用;如果本地仓库不存在此构件,或者需要查看是否有更新的构件版本,Maven会去远程仓库查找,发现需要的构件之后,下载到本地仓库再使用。

    到了这里,问题的答案也就出来了。

    首先,Nexus是一种远程仓库,根据上段的介绍,我们已经知道远程仓库的作用。在远程仓库中,默认的是中央仓库,中央仓库是Maven核心自带的远程仓库。那就使用中央仓库不就得了吗,为什么我们要安装Nexus呢?

    我们从项目实际开发来看:

    1.一些无法从外部仓库下载的构件,例如内部的项目还能部署到私服上,以便供其他依赖项目使用。

    2. 为了节省带宽和时间,在局域网内架设一个私有的仓库服务器,用其代理所有外部的远程仓库。当本地Maven项目需要下载构件时,先去私服请求,如果私服没有,则再去远程仓库请求,从远程仓库下载构件后,把构件缓存在私服上。这样,及时暂时没有Internet链接,由于私服已经缓存了大量构件,整个项目还是可以正常使用的。同时,也降低了中央仓库的负荷。

    Nexus仅仅是私服的一种。

     

    展开全文
  • 一、Nexus简介 Nexus全称Sonatype Nexus,是一种特殊的远程仓库,它是架在局域网内的仓库服务。 Maven访问远程仓库下载jar包是需要外网支持的,在不提供外网或者网速很慢的情况下,项目构建就会非常困难,所以很...

    一、Nexus简介

    Nexus全称Sonatype Nexus,是一种特殊的远程仓库,它是架在局域网内的仓库服务。

    Maven访问远程仓库下载jar包是需要外网支持的,在不提供外网或者网速很慢的情况下,项目构建就会非常困难,所以很有必要在局域网内搭建Nexus私服。

    Nexus私服代理广域网上的远程仓库,供局域网内的Maven用户使用。

    当Maven需要下载构件的时候,它从Nexus请求,如果Nexus上不存在该构件,则从外部的远程仓库上下载,缓存到nexus上之后再为Maven的下载提供服务。除此之外,我们还可以把一些无法从外部远程仓库下载到的构件上传到私服,实现共享的目的。

    二、Nexus安装

    Nexus Repository OSS

    Manage binaries, artifacts, and release candidates for FREE

    The free artifact repository with universal support for popular formats

    Nexus 开源的 免费的 支持通用流行的文件格式

    1.Windows中安装步骤

    1.1 下载 Nexus Repository Manager OSS,使用的版本为3.16.1-02

    1.2 解压nexus-3.16.1-02-win64.zip

    1.3 服务配置 环境变量Path新增Nexus bin目录

    1.4 启动

    method 1 直接启动,执行 nexus.exe/run命令

     打印如下日志,则启动成功

    -------------------------------------------------
    
    Started Sonatype Nexus OSS 3.16.1-02
    
    -------------------------------------------------

    method 2 安装服务再启动,依次执行如下命令

    //安装服务
    C:\windows\system32>nexus.exe/install nexus-3.16.1-02
    Installed service 'nexus-3.16.1-02'.
    
    备注:Could not open SCManager 为权限不足,请使用管理者身份运行
    
    //启动服务
    C:\windows\system32>nexus.exe/start nexus-3.16.1-02
    Starting service 'nexus-3.16.1-02'.
    
    //停止服务
    C:\windows\system32>nexus.exe/stop nexus-3.16.1-02
    Stopping service 'nexus-3.16.1-02'.
    Service stopped
    
    
    //卸载服务
    nexus.exe /uninstall nexus-3.16.1-02

    1.5 访问系统

    服务启动后,打开链接:http://localhost:8081/

    sign in 账号/密码:admin/admin123

     

    2.Unix中安装

     

    三、Nexus查看&管理

     

     

     

    展开全文
  • 基于Nexus系统搭建Maven私服详解

    千人学习 2019-05-07 15:33:14
    本课程共5节内容,是从“精讲”课程中抽取出来的专题详解,内容包括nexus私服的搭建、使用和配置,通过案例演示了私服下载依赖、上传依赖等功能,通俗易懂。 友情提示:该视频课程为免费课程,无法再次提供笔记和...
  • Nexus私服

    万次阅读 2018-08-28 20:43:07
    仓库:对maven来说仓库分为两类:...有三种专门的Maven仓库管理软件可以用来帮助我们建立私服:chiva、Artifactory和NexusNexus是当前最流行的Maven仓库管理软件。 一、用war方式安装Nexus 下载Nexus http://do...

    仓库:对maven来说仓库分为两类:本地仓库和远程仓库,远程仓库又分为中央仓库 私服和其他公共库 中央仓库之前说过

    所以说私服,私服是一种特殊的远程仓库。他是p81

    有三种专门的Maven仓库管理软件可以用来帮助我们建立私服:chiva、Artifactory和Nexus。Nexus是当前最流行的Maven仓库管理软件。

    一、用war方式安装Nexus

    下载Nexus

    http://download.csdn.net/detail/wshuaichao/8305241

    将其下载到Tomcat的部署目录的webapps目录下,如下

    然后改名为nexus.war

    参考 http://blog.csdn.net/zhangdaiscott/article/details/46829999

    然后转到tomcat目录的bin目录下运行,这时读者可以从Tomcat的console输出中看到它部署nexus.war

    当tomcat启动完成之后访问http://localhost:8080/nexus/就能看到Nexus的界面了

     

    二、

    登录:Nexus有全面的权限控制功能,默认的nexus访问都是匿名的,而匿名用户仅包含一些最基本的权限。要想全面学习和管理Nexus就必须以管理员方式登录。单击右上角Log In进行登录  默认管理员和密码是admin/admin123

    登录之后的页面如下:

    三、Nexus的仓库与仓库组 

      Nexus包含了各种类型的仓库的概念,包括代理仓库、宿主仓库、仓库组等。每一种仓库都提供了丰富实用的配置参数,方便用户根据需要进行定制。

    1. Nexus内置的仓库

    先浏览一些Nexus内置的仓库。单击Nexus界面左边导航栏中的Repositories链接 看到下图:

    这个列表已经包含了所有类型的Nexus仓库。从中可以看到仓库有四种类型(Type):group(仓库组)、hosted(宿主)、proxy(代理)和virtual(虚拟);每个仓库的格式(Format)为maven2或maven1;还有一个策略属性Policy:表示该仓库为发布版本仓库(Release)还是快照版本仓库(Snapshot);最后两列是仓库的状态和路径。

    各个仓库的用途:

    Codehaus Snapshots 这是一个策略为Snapshot的代理仓库 用来代理Codehaus Snapshots仓库的快照版本构件

    Apache Snapshots这是一个策略为Snapshot的代理仓库 用来代理Apache Snapshots仓库的快照版本构件

     Central  该仓库代理Maven中央仓库 策略为Release 因此只会下载和缓存中央仓库中的发布版本构件

    Releases这是一个策略为Release的宿主类型仓库 用来部署组织内部的发布版本构件

    Snapshots这是一个策略为Snapshot的宿主类型仓库 用来部署组织内部的快照版本构件

     

    举个简单例子:假设某公司建立了一个maven项目x,公司内部建立了Nexus私服为所有maven项目提供服务。。。。

    p153

    1. 仓库分类

    看图,各种类型的Nexus仓库

     

    从图中可以看出,maven可以直接从宿主仓库下载构件;也可以从代理仓库下载构件,而代理仓库会间接的从远程仓库下载并缓存构件;最后,为了方便,maven可以从仓库组下载构件,而仓库组没有实际内容它会转向其包含的宿主仓库或者代理仓库获得实际构件的内容。

    1. 创建Nexus宿主仓库

    配置界面

     

    1. 创建Nexus代理仓库

    1. 创建Nexus仓库组

     

    2:下载地址

    http://www.sonatype.org/nexus/go

    根据自已的操作系统下载适合的版本

     

    3:Nexus启动

    这个下载下来后是绿色版的,进入bin/jsw/选择你系统的版本/console-nexus.bat,运行http://127.0.0.1:8081/nexus/

    8081为默认的端口号,要修改端口号可进入\conf\打开nexus.properties文件,修改application-port属性值就行了。默认的用户名和密码:admin/admin123

     

    4: 进入首页击左侧:Repositories,可以看到几种仓库的类型,下面一一介绍一下

    这是软件默认给我们建立的标准类型,可以删除,但是这里不需要删除它。将自已类型的包放在相应的类型下即可

     

     5:管理本地仓库,也就是类型为hosted的。这也是我们项目中会用到的。

    6:项目中配置仓库地址

    修改maven的setting.xml文件,修改这个文件的话,我们所有项目都会是这个配置,如果每个项目需要不同的maven配置,可以配置在工程的pom.xml文件中,

    但是一般不会为每个工程配置一个仓库,所以我们选择修改setting.xml文件。

    <servers>  

          <server>  

          <id>nexus-releases</id>  

          <username>admin</username>  

          <password>admin123</password>  

        </server>  

        <server>  

          <id>nexus-snapshots</id>  

          <username>admin</username>  

          <password>admin123</password>  

        </server>  

      </servers>

    <mirrors>   

        <mirror>

          <id>nexus-releases</id>   

          <mirrorOf>*</mirrorOf>   

          <url>http://localhost:8081/nexus/content/groups/public</url>   

        </mirror>  

        <mirror>   

          <id>nexus-snapshots</id>   

          <mirrorOf>*</mirrorOf>   

          <url>http://localhost:8081/nexus/content/groups/public-snapshots</url>   

        </mirror>

      </mirrors>

    <profiles>  

       <profile>  

          <id>nexus</id>  

          <repositories>  

            <repository>  

              <id>nexus-releases</id>  

              <url>http://nexus-releases</url>  

              <releases><enabled>true</enabled></releases>  

              <snapshots><enabled>true</enabled></snapshots>  

            </repository>  

            <repository>  

              <id>nexus-snapshots</id>  

              <url>http://nexus-snapshots</url>  

              <releases><enabled>true</enabled></releases>  

              <snapshots><enabled>true</enabled></snapshots>  

            </repository>  

          </repositories>  

          <pluginRepositories>  

             <pluginRepository>  

                    <id>nexus-releases</id>  

                     <url>http://nexus-releases</url>  

                     <releases><enabled>true</enabled></releases>  

                     <snapshots><enabled>true</enabled></snapshots>  

                   </pluginRepository>  

                   <pluginRepository>  

                     <id>nexus-snapshots</id>  

                      <url>http://nexus-snapshots</url>  

                    <releases><enabled>true</enabled></releases>  

                     <snapshots><enabled>true</enabled></snapshots>  

                 </pluginRepository>  

             </pluginRepositories>  

        </profile>  

      </profiles>

    <activeProfiles>  

          <activeProfile>nexus</activeProfile>  

      </activeProfiles>

     

    这里一般都是固定写法,基本上不要变动,就是所需要的JAR包默认会去本地仓库获取,如果获取不到,就会去maven的中央仓库获取,JAR包获取到之后,也会默认上传到我们本地仓库,

    这样其它项目组的同事就可以直接从本地获取了

    展开全文
  • nexus简介

    千次阅读 2018-07-22 21:48:23
    前言 私服是指私有服务器,是假设在局域网的一种特殊的远程仓库,目的是代理远程仓库及部署第三方构建....nexus是一个强大的maven仓库管理器,它极大的简化了本地内部仓库的维护和外部仓库的访问. nexus是一套开...
  • nexus-2.14

    2020-07-24 23:33:56
    搭建私服工具,nexus
  • Nexus3功能介绍

    万次阅读 2019-07-31 19:30:53
    1、Browse Server Content 1.1 Search 这个就是类似Maven仓库上的搜索功能,就是从私服上查找是否有哪些包。 注意:在Search这级是支持模糊搜索的 ...顾名思义就是上传jar包到私服中,可以选择其中一个hosted仓库...
  • Nexus安装、使用说明

    千次阅读 2018-03-22 14:29:25
    1、 为什么使用Nexus 如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方的Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下 载构件无疑加大了仓库的负载和浪费了外网带宽,如果...
  • Nexus的使用

    千次阅读 2018-11-06 09:50:22
    仓库类型, nexus最重要的概念 这时候已经搭建好了Nexus,要做操作前先登录,默认用户名admin,默认密码admin123。来看看各个Repository。点击左侧Repositories。 hosted:本地仓库,通常我们会部署自己的构...
  • nexus 安装与启动

    万次阅读 2018-07-30 16:17:09
    本文使用的是nexus-3.13.0-01-win64,nexus不同ban'版本启动命令有区别 2.安装后 1.进入nexus 安装目录, 2.进入nexus-3.13.0-01目录下的bin 使用.\nexus.exe /run 开始运行 3.打开浏览器输入127.0...
  • nexus的下载和安装

    万次阅读 热门讨论 2019-02-01 19:58:39
    nexus的下载和安装 1、nexus可以在官网下载,https://www.sonatype.com/download-oss-sonatype 选择OSS的下载免费,如果太慢,小编为大家提供了另外的地址: 下载后可以看到有两个目录: nexus安装文件目录,和work...
  • nexus服务启动命令

    万次阅读 2019-01-22 17:23:45
    这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、...
  • Nexus 登录用户名和密码重置

    万次阅读 2013-08-09 15:59:23
    到: nexus\sonatype-work\nexus\conf 目录下面 停止nexus,然后 删除 security-configuration.xml security.xml 启动nexus 会重新生成两个配置文件。 登录名称还原为admin/admin123
  • nexus 日志

    千次阅读 2018-03-09 14:16:43
    一、查看 nexus 的日志文件 1、进入到:nexus\nexus-2.14.8-01-bundle\nexus-2.14.8-01\logs\ 目录下(日志目录) 2、nexus 项目启动后,会在该目录下生成:wrapper.log 日志文件
  • Nexus3默认密码问题

    万次阅读 2019-07-10 09:46:01
    原文:https://www.cnblogs.com/wbl001/p/11154828.html
  • maven nexus 私服重启

    万次阅读 2018-11-23 10:21:22
    maven 私服down掉 http://192.168.2.115:8081/nexus/content/groups/public/ 打不开     root@Server:~# find / -name nexus /root/.java/.userPrefs/com/sonatype/nexus .../opt/nexus-2.11.2...
  • 使用nexus搭建maven私服、手动更新索引

    万次阅读 热门讨论 2014-12-06 21:02:13
    网络上关于搭建maven私服的文章很多,但对于maven仓库索引的配置这方面还是较少,本文主要讲述如果快速搭建一个nexus私服,以及如何手动更新索引文件。
  • 1. 在之前的版本中,启动nexus服务都是在cmd中输入 nexus install来安装服务,nexus start来启动服务。   2. 在nexus-3.2.0-01中,直接在nexus根目录下的bin下,输入 nexus.exe/run 即会启动服务。  ...
1 2 3 4 5 ... 20
收藏数 72,096
精华内容 28,838
关键字:

nexus