`
wj98127
  • 浏览: 268915 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

使用nexus替代artifactory作为maven私服

阅读更多
1. 首先下载Nexus
    从官网http://nexus.sonatype.org/download.html下载下载最新版本,因为是在windows上安装,因此下载的是zip版本,大小大概是16m。
   
2. 安装
    简单解压缩下载的zip包到安装目录就可以了。
    可执行文件在%nexus安装目录%\nexus-webapp-1.0.0\binjsw\windows-x86-32下:
        InstallNexus.bat/UninstallNexus.bat是安装/卸载nexus为windows service,如果需要设置nexus为开机自动启动就可以安装为windows service然后设置启动方式为自动。
        Nexus.bat是直接在命令行中启动Nexus,如果不想安装Nexus为windows service,可以用这个文件来手工控制Nexus的启动退出。
       
       
3. 配置nexus

    首先登录,默认地址http://localhost:8081/nexus/,默认用户名密码为admin/admin123.
   
    最重要的一件事情就是开启远程索引下载,索引这个功能实在是太好用了。
   
    nexus默认是关闭远程索引下载功能的,主要是担心会造成对服务器的巨大负担,需要我们手工开启。
   
    开启的方式:
        点击Administration菜单下面的Repositories,将这三个仓库Apache Snapshots,Codehaus Snapshots,Maven Central的Download Remote Indexes修改为true。然后在这三个仓库上分别右键,选择Re-index,这样Nexus就会去下载远程的索引文件。
       
4. 配置maven
    要让maven使用nexus作为私服,需要做一些设置,使用和原来设置artifactory相似的方法。修改~/.m2/settings.xml.
   
    增加nexus的profile:

    <profile>
      <id>nexus</id>
      <repositories>
        <repository>
            <id>nexus</id>
            <name>local private nexus</name>
            <url>http://localhost:8081/nexus/content/groups/public</url>
            <releases><enabled>true</enabled></releases>
            <snapshots><enabled>false</enabled></snapshots>
        </repository>
        <repository>
            <id>nexus</id>
            <name>local private nexus</name>
            <url>http://localhost:8081/nexus/content/groups/public-snapshots</url>
            <releases><enabled>false</enabled></releases>
            <snapshots><enabled>true</enabled></snapshots>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
            <id>nexus</id>
            <name>local private nexus</name>
            <url>http://localhost:8081/nexus/content/groups/public</url>
            <releases><enabled>true</enabled></releases>
            <snapshots><enabled>false</enabled></snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>nexus</id>
            <name>local private nexus</name>
            <url>http://localhost:8081/nexus/content/groups/public-snapshots</url>
            <releases><enabled>false</enabled></releases>
            <snapshots><enabled>true</enabled></snapshots>
        </pluginRepository>
       </pluginRepositories>
    </profile> 
    修改activeProfiles为:
      <activeProfiles>
        <activeProfile>nexus</activeProfile>
      </activeProfiles>     
5. 为nexus增加Artifact
    有些特殊的Artifact无法从maven官网仓库中下载,比如sun的一些包,只好自己自行下载后添加到私服中。
    在nexus中我选择将这些Artifact上传到默认安装就存在的仓库3rd Party中,右击仓库名,选择Upload Artifact。
   
6. 在eclipse中使用索引功能
    原来试过,使用artifactory私服也可以使用Artifact的索引功能,但是由于不知道怎么设置远程仓库的index,我只会设置
    当前artifactory私服已有的Artifact的索引,对于还没有导入到artifactory私服的Artifact就没有办法索引了,很不方便,
    毕竟刚开始使用maven时,所有用到的Artifact都是本地和私服没有而需要到远程仓库取的。
   
    nexus中可以很方便的得到远程仓库的Artifact的索引,在上面“3. 配置nexus”就介绍过。下面介绍如何在eclispe里面
    设置和使用索引功能:
    1) 打开Maven Indexes 的eclispe view
        在eclispe中选择window -> show view -> other ... -> Maven -> Maven Indexes
    2) 添加nexus的index
        右键菜单中选"add index", 在弹出的"Add Respository index"窗口中填入:
            Repository URL: http://localhost:8081/nexus/content/groups/public
            Repository Id: nexus
            Index Update URL: 放空,暂时还不知道该怎么填
        加入后eclispe会自动load一次index信息,然后就可以在新加入的index下可以拉出极大数量的Artifact信息。
    3) 测试一下使用
        找个pom.xml文件,右键 -> Add Dependency, 然后填入一个关键词,比如我填入mina,马上填出和mina相关的一些
        选择,我找到apache mina,双击最新一个版本。会自动在pom.xml文件中增加以下内容:

        <dependency>
            <groupId>org.apache.directory.mina</groupId>
            <artifactId>mina-core</artifactId>
            <version>0.9.5</version>
        </dependency>
        然后Maven自动下载jar包,再将jar包加入项目的build path,全程自动化处理,真是爽啊。

7. 为nexus增加新的proxy  repository
        方法很简单,administration -> Repositories -> add -> proxy,填写后保存即可。但是要注意,nexus不会自动将新加入的repository添加到group中,而我们一般喜欢直接使用默认的"public repository" group, 比如前面我在maven的profile中就只设置了这一个URL: http://localhost:8081/nexus/content/groups/public。因此需要手工修改"public repository" group的设置,将刚才添加的proxy  repository加到组中。
        推荐的repository有:
                1) jboss         http://repository.jboss.com/maven2/
                2) sun            http://download.java.net/maven/2/
                3)k-int           http://developer.k-int.com/maven2/
                        加入这个纯粹是因为它有sun的jmxri/jmxtools这些Artifact,强烈鄙视sun,自己的官方repository居然没有。
8. 总结
    很明显,nexus无论是在界面,功能,操作上,都比artifactory强大的多。
    因此推荐大家使用nexus替代artifactory作为maven私服。
分享到:
评论

相关推荐

    使用Nexus搭建Maven私服

    使用Nexus搭建Maven私服 标题:使用Nexus搭建Maven私服 描述:关于使用Nexus搭建Maven私服的开发文档。 标签:Nexus 搭建Maven 在实际的企业开发中经常会遇到的问题:在进行Maven项目开发时,所需要的构件都是...

    maven私服教程.zip

    Nexus和Artifactory是两种常见的Maven私服软件。Nexus由Sonatype提供,免费版功能已经足够满足大多数需求;Artifactory则是JFrog公司的产品,提供了更多高级功能和企业级支持。 3. Maven私服的安装与配置: 首先...

    maven私服demo

    Maven私服本质上是一个本地的Maven仓库,它可以是Nexus、Artifactory等专门的仓库管理软件,也可以是简单的HTTP服务器上的一系列目录。它作为一个中间层,介于开发人员和远程公共Maven仓库之间,使得团队可以方便地...

    用Nexus做Maven私服全攻略

    ### 使用Nexus作为Maven私有仓库全攻略 #### Nexus简介 Nexus是由Sonatype公司推出的一款强大的Maven仓库管理工具。相比于之前介绍过的Artifactory,Nexus具有更为直观的用户界面和丰富的功能特性,是一款开箱即用...

    apaas maven私服仓库

    2. **搭建私服**:常见的Maven私服软件有Sonatype Nexus和JFrog Artifactory。它们都提供了一种方便的方式来管理内部依赖,包括上传、下载和版本控制。 3. **配置Maven**:在Maven的settings.xml文件中,需要配置...

    阿里云ECSlinux服务器搭建和maven私服仓库技术文档.zip

    4. 搭建私有仓库:可以使用Nexus、Artifactory等专业工具,或者使用简单的`mvn deploy`命令将项目上传到自定义的目录,实现本地仓库功能。 5. 配置私服仓库:在"私服搭建完成的项目配置包含拉取和上传jar包four.txt...

    maven 3.8.1版本私服配置版本

    Maven是Java开发中广泛使用的构建工具,... - 对于大型组织,通常会使用Nexus、Artifactory等专业软件作为Maven私服。 通过以上步骤,你将能够成功地配置Maven 3.8.1版本的私服,实现高效、安全的依赖管理和项目构建。

    maven教程,分模块构建及私服搭建

    2. **Nexus/Artifactory**:Nexus和Artifactory是常用的Maven私服软件,它们提供仓库管理、依赖代理、缓存等功能。 3. **安装与配置**:首先,下载并安装Nexus或Artifactory,然后在公司的Maven配置文件(~/.m2/...

    maven私服apache-archiva-2.2.3-bin.tar.gz

    Apache Archiva作为一个Maven私服,提供了以下关键优势: 1. **安全性**:通过私有仓库,组织可以确保只有经过审查的库被用于内部项目,防止外部恶意代码的引入。 2. **效率**:频繁使用的依赖会被缓存,减少网络...

    maven代码自动将本地仓库中的包上传到maven私服

    本主题聚焦于如何通过Maven代码自动将本地仓库中的包上传到Maven私有仓库(Nexus或Artifactory等)。这个过程通常在项目开发过程中用于分享自定义的库或组件,以便团队成员可以方便地依赖它们。 1. Maven仓库概念 ...

    Maven的简单使用以及Maven搭建SSH

    Maven私服(Nexus或Artifactory)是用于内部共享依赖和管理发布的服务器。以下步骤演示如何搭建: 1. **安装私服**:下载并安装Nexus或Artifactory,按照官方文档配置。 2. **配置Maven**:在`settings.xml`中添加...

    maven搭建、集成,创建聚合项目问题及错误解决

    Maven中央仓库是默认的依赖获取源,但在企业环境中,为了提高依赖下载速度和管理私有库,常常会搭建Maven私服,如Nexus或Artifactory。配置私服需要修改`settings.xml`文件,指定镜像和仓库地址,这样,项目中的依赖...

    eclipse使用maven整理文档.rar_captured7ne_eclipse mavenhelper_maven

    此外,“maven私服”意味着文档将专门讲解如何配置和使用私有Maven仓库,这对于大型企业或团队来说尤其重要,因为它能确保内部库的隐私性和提高构建速度。 【标签】"captured7ne eclipse_mavenhelper maven"暗示了...

    nexus-3.30.1-01-win64.rar

    Maven私服是Nexus的重要应用之一,它是私有环境中的一个Maven仓库,允许团队内部共享和管理依赖,而无需频繁访问公共Maven中央仓库。通过Nexus,我们可以设置安全策略,控制对不同仓库的访问,防止不合规的构件发布...

    maven的基本使用和配置

    1. **搭建私服**:可以使用 Nexus 或 Artifactory 等工具搭建私有 Maven 仓库。 2. **配置私服**:在 `settings.xml` 文件中配置私服的地址和认证信息。 ```xml &lt;id&gt;internal.repo &lt;username&gt;admin ...

    Maven安装部署.docx

    - **搭建私服**: 为了提高构建速度,企业通常搭建内部的 Maven 私服(如 Nexus 或 Artifactory),集中管理内部库和第三方依赖,避免频繁访问公共仓库。 - **使用私服**: 在 `settings.xml` 中配置私有仓库地址,...

Global site tag (gtag.js) - Google Analytics