`
tiankong6622
  • 浏览: 55255 次
社区版块
存档分类
最新评论

搭建Nexus私服

 
阅读更多

 

 搭建私服的优点:

    (1) 降低中央仓库负荷

    (2) 节省外网带宽

    (3) 加速Maven构建

    (4) 自己部署构件

1. Nexus安装

    (1) 下载:http://www.sonatype.org/nexus/,下载包:nexus-2.0.2.war

    (2) 安装

         A. WAR方式安装Nexus

         将nexus-2.0.2.war拷贝至Tomcat的部署目录:C:\Apache-tomcat-7.0.26\webapps下,

         启动Tomcat, 进入Tomcat管理首页即可;

         浏览器访问地址:http://localhost:8080/nexus

         B. Bundle方式安装Nexus

         因为Bundle方式的Nexus默认集成了Jetty容器,因此不需要其他第三方Web容器,解压下载的Bundle

         方式的Nexus文件,有下面的两个目录:

         nexus-webapp-2.0.2:包含Nexus所需要的文件,如启动脚本,依赖JAR等。

         sonatype-work:包含Nexus生成的配置文件、日志文件、仓库文件。

         WinOS下,进入nexus-webapp-2.0.2/bin/jsw/windows-x86-32运行nexus.bat脚本启动服务。

         浏览器访问地址:http://localhost:8081/nexus

         备注:

         更改访问端口:修改nexus-webapp-2.0.2/conf/plexus.properties

    (3) 登录

         Nexus默认的管理员及密码:admin/admin123

2. Nexus的仓库与仓库组

    Nexus有四种仓库类型:group,hosted,proxy,virtual,仓库格式为:maven2或maven1,仓库属性Policy

    为:Release或Snapshot.

3. 配置Maven从Nexus下载构件

    (1) 在POM中配置Nexus仓库

    <project>

         ...

         <repositories>

            <repository>

                 <id>nexus</id>

                 <name>Nexus</name>

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

                 <release><enabled>true</enabled></release>

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

             </repository>

        </repositories>

        <pluginRepositories>

             <pluginRepository>

                 <id>nexus</id>

                 <name>Nexus</name>

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

                 <release><enabled>true</enabled></release>

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

              </pluginRepository>

         </pluginRepositories>

         ...

    </project>

    上述配置只对当前项目有效,若需让本机所有Maven项目均使用Mavne私服,应该在setting.xml中进行配置。

    (2) 在setting.xml中配置Nexus仓库

    <settings>

          ...

          <profiles>

                <profile>

                    <id>nexus</id>

                    <repositories>

                        <repository>

                          <id>nexus</id>

                          <name>Nexus</name>

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

                          <release><enabled>true</enabled></release>

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

                        </repository>

                     </repositories>

                     <pluginRepositories>

                        <pluginRepository>

                            <id>nexus</id>

                            <name>Nexus</name>

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

                            <release><enabled>true</enabled></release>

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

                       </pluginRepository>

                     </pluginRepositories>

                </profile>

           </profiles>

           <activeProfiles>

               <activeProfile>nexus</activeProfiles>

           </activaProfiles>

            ...

    </settings>

    (3) 配置镜像让Maven只使用私服

    <settings>

          ...

          <mirrors>

              <mirror>

                  <id>nexus</id>

                  <mirrorOf>*<?mirrorOf>

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

              </mirror>

          </mirrors>

          <profiles>

                <profile>

                    <id>nexus</id>

                    <repositories>

                        <repository>

                          <id>central</id>

                          <name>http://central</name>                        

                          <release><enabled>true</enabled></release>

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

                        </repository>

                     </repositories>

                     <pluginRepositories>

                        <pluginRepository>

                            <id>central</id>

                            <name>http://central</name>                           

                            <release><enabled>true</enabled></release>

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

                       </pluginRepository>

                     </pluginRepositories>

                </profile>

           </profiles>

           <activeProfiles>

               <activeProfile>nexus</activeProfiles>

           </activaProfiles>

            ...

    </settings>

    说明:该配置中仓库及插件仓库的id均为central,即覆盖了超级POM中央仓库的配置,他们的ULR可以不做

    配置,因为所有请求都会通过镜像访问私服地址。

4. 部署构件至Nexus

    (1) 使用Maven部署构件至Nexus

    <project>

        ...

        <distributionManagement>

            <repository>

                  <id>nexus-releases</id>

                  <name>Nexus Releasse Repository</name>

                  <url>http://localhost:8081/nexus/content/repositories/release</url>

            </repository>

            <snapshotRepository>

                  <id>nexus-snapshots</id>

                  <name>Nexus Snapshots Repository</name>

                  <url>http://localhost:8081/nexus/content/repositories/snapshots</url>

            </snapshotRepository>

         </distributionManagement>

         ...

    </project>

    Nexus的仓库对于匿名用户时只读的,为了方便部署,需要在setting.xml配置认证信息:

    <settings>

         ...

         <servers>

             <server>

                 <id>nexus-releases></id>

                 <username>admin</username>

                 <password>*****</password>

             </server>

             <server>

                 <id>nexus-snapshots></id>

                 <username>admin</username>

                 <password>*****</password>

             </server>

          </servers>

          ...

    </settings>

    (2) 手动部署第三方构件至Nexus

    选择宿主仓库如:3rd Party,在Artifact Upload中上传。

5. 其他私服软件

    Apache的Archive和JForg的Artifactory.

 

原文地址:http://springsfeng.iteye.com/blog/1456856

分享到:
评论

相关推荐

    Nexus私服搭建步骤

    Nexus私服搭建步骤详解 Nexus 私服是一种流行的 Maven 仓库管理工具,广泛应用于企业级软件开发中。下面是一步步搭建 Nexus 私服的详细教程。 第一步:下载 Nexus 安装文件 首先,需要下载 Nexus 的安装文件,...

    私服搭建nexus安装包

    官网十分难下载,我这边给大家提供了windows版本以及Linux版本,给大家压缩到一起了,分别有:nexus-3.37.3-02-win64.zip,nexus-3.37.3-02-unix.tar.gz,大家可以自由下载使用。

    Maven Nexus 私服搭建

    Maven Nexus 私服搭建 从零开始,资源下载、安装指导、开发配置说明

    Nexus搭建Maven私服 +maven安装步骤

    Nexus 搭建 Maven 私服 + Maven 安装步骤 Nexus 是一个功能强大且灵活的仓库管理工具,能够帮助开发团队更好地管理项目依赖项和构件。通过搭建 Nexus 私服,可以实现项目依赖项的集中管理、加速项目构建和部署、...

    Maven nexus 私服 搭建

    为了解决这个问题,Sonatype提供了Nexus作为私有仓库解决方案,通过搭建Nexus私服,可以实现对第三方库的统一管理,提高构建速度,减少网络带宽消耗。本文将详细介绍如何搭建和配置Maven Nexus私服。 #### 二、环境...

    Nexus私服搭建

    在Linux环境下搭建Nexus私服,可以有效地管理和控制企业的内部依赖,提高开发效率并保障代码质量。 一、Nexus的主要功能 1. **中央仓库代理**:Nexus可以作为Maven中央仓库的代理,为本地开发团队提供快速的依赖...

    Nexus私服搭建文档

    通过搭建Nexus私服,可以有效地减少对外部网络的依赖,提高开发效率,降低带宽消耗。本文档将详细介绍如何使用 Maven + Nexus 搭建一个私服环境。 #### 二、Nexus私服搭建步骤 ##### 第一步:下载nexus.war包 ...

    用nexus搭建私服

    通过搭建Nexus私服,开发者可以: 1. **集中管理依赖**:将项目所依赖的各种库集中存储,便于版本控制和查找。 2. **缓存公共仓库**:自动从公共仓库下载依赖,并缓存本地,减少外部网络的依赖,提高下载速度。 3. ...

    nexus私服搭建1

    搭建Nexus私服能够帮助团队更高效地管理内部依赖,同时降低对外部仓库的访问压力。 **一、Nexus的安装** 1. **下载Nexus**: 你可以从Sonatype官网下载最新版本的Nexus,如在本例中是`nexus-3.19.1-01-mac.tgz`。...

    nexus-3.2.0-01-win64

    为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网里找一台有外网权限的机器,搭建nexus私服,然后开发人员连到这台私服上,...

    nexus-2.14.rar

    为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网里找一台有外网权限的机器,搭建nexus私服,然后开发人员连到这台私服上,...

    Windows 下Nexus搭建Maven私服

    ### Windows 下 Nexus 搭建 Maven 私服详解 #### 一、为什么使用 Nexus 在软件开发过程中,尤其是采用 Maven 构建管理的项目中,依赖管理是非常关键的一环。通常,开发人员需要从 Maven 中央仓库下载各种依赖库到...

    nexus-2.12.0-01-bundle.tar.gz

    为什么要搭建nexus私服,原因很简单,有些公司都不提供外网给项目组人员,因此就不能使用maven访问远程的仓库地址,所以很有必要在局域网里找一台有外网权限的机器,搭建nexus私服,然后开发人员连到这台私服上,...

    nexus私服搭建及使用整理.docx

    nexus私服搭建及使用整理(Window和linux两种搭建方式)

Global site tag (gtag.js) - Google Analytics