`
witcheryne
  • 浏览: 1099049 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

搭建Nexus + Maven环境

阅读更多

 

     本片是前一段时间搭Mvn + Neuxs环境, 在EverNote中做的笔记,今天把它腾到这里重新排版

前言

     上周末终于把netmanage30项目迁移到了mvn环境下,其中各种折腾.现在终于熟悉了maven的使用方式.

     按照best parctice需要使用nexus来做依赖管理服务器.在个人开发的方式下优势估计不是很明显,不过在团队开发中好处不言而喻.

     说了这么多nexus到底有什么好处:

          1. 统一管理依赖的jar包,作为一mvn的代理,所有链接到nexus上的用户公用一套nexus中的jar包.这样团队中之需要下载一次依赖

          2. 团队中开发的bundle可以发布到nexus中进行共享.

          3. mvn + nexus提供一种snapshot(快照)的版本发布方式.关于snapshot版本控制,下面这篇文章介绍的很详细:

               http://juvenshun.iteye.com/blog/376422

 

在Ubuntu 10.04LTS 下安装Nexus

 

     关于Nexus安装在哪里的问题,我毫不犹豫的选择Virtual Box虚拟机.好处就是研发环境如何变化,管理平台的环境始终保持不变.

     ok~ 说了这么多废话,下面开始nexus安装, 在安装时我直接使用的root用户,如果选择其他用户需要使用sudo来提升权限, 如果不知道如何使用root用户的朋友可以使用如下指令:

 

     #修改root密码,可以理解成激活root用户

     passwd root          

 

     提示输入密码, 输入两遍即可.

     注销当前用户,用root用户登录即可

 

1. 寻找最新版本的Nexus和文档

 

     官方网站: http://nexus.sonatype.org/

     官方文档: http://www.sonatype.com/books/nexus-book/reference/

 

2. 下载合适的Nexus

 

     下载地址: http://nexus.sonatype.org/downloads/

     Nexus分代jetty的独立版和war包形式的部署版,如果已经有随机启动的servlert contaner可以采用war形式,本次我打算采用独立版

     独立版选择 *.tar.gz/*.zip 压缩包即可:

          wget http://nexus.sonatype.org/downloads/nexus-oss-webapp-1.9.2-bundle.tar.gz

 

3. 安装Nexus
     1). 解压缩

               tar -zvxf nexus-oos-webapp-1.9.2-bundle.tar.gz

 

     2). 将文件移动到对应路径,并将文件名重命名为nexus-1.9.2

               mv ./nexus-oos-webapp-1.9.2-bundle.tar.gz /usr/local/nexus-1.9.2

 

     3). 首次运行nexus:(注意: 在此之前需要确保配置好了java环境)

               /usr/local/nexus-1.9.2/bin/jsw/linux-x86-32/nexus start

               #监视一下日志

               tail -f /usr/local/nexus-1.9.2/logs/wrapper.log

 

     4). 访问如下地址访问Nexus:

               http://localhost:8081/nexus

 


 

     到此,如果不想做额外,nexus已可以使用.下面需要配置"环境变量"和"系统服务",好处就是可以方便使用.

 

4. 添加环境变量

 

     1).编辑profile文件

          gedit ~/.profile

 

     2).加入如下内容:

               export NEXUS_HOME=/usr/local/nexus-1.9.2

               export PATH=$NEXUS_HOME/bin/jsw/linux-x86-32/:$PATH

     3). 重新登录之后可以使其生效

          试试 nexus console

 

5. 增加启动服务:

 

     1). 将$NEXUS_HOME/bin/jsw/bin/linux-x86-32/nexus复制到/etc/init.d下

               cp $NEXUS_HOME/bin/jsw/bin/linux-x86-32/nexus /etc/init.d

 

     2). 编辑/etc/init.d/nexus

               gedit /etc/init.d/nexus

               修改如下内容:

               # Application

               APP_NAME="nexus"

               APP_LONG_NAME="Sonatype Nexus"

               NEXUS_HOME=/usr/local/nexus-1.9.2

               PLATFORM=linux-x86-32

 

               # Wrapper

               WRAPPER_CMD=$NEXUS_HOME/bin/jsw/$PLATFORM/wrapper

               WRAPPER_CONF=$NEXUS_HOME/bin/jsw/conf/wrapper.conf

 

               # Location of the pid file.

               PIDDIR="/var/run"

 

     3). 添加成服务,并执行

               cd /etc/init.d

               update-rc.d nexus defaults

 

               #执行

               service nexus start

               #Starting Sonatype Nexus...

               tail -f /usr/local/nexus/logs/wrapper.log

 

让Maven链接上Nexus

 

1. 修改maven设置

     一般我们修改用户设置, ~/.m2/settings.xml

 

<settings>
    <mirrors>
        <mirror>
            <!--This sends everything else to /public -->
            <id>nexus</id>
            <mirrorOf>*</mirrorOf>
            <url>http://192.168.0.107:8081/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://central</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>

    <!-- 设置发布时的用户名 -->
    <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>

</settings>
 

2. 在项目pom.xml设置发布目录:

 

     <properties>
          <nexus.url>192.168.0.107:8081</nexus.url>
     </properties>
     
     <distributionManagement>
        <repository>
            <id>nexus-releases</id>
            <name>Nexus Release Repository</name>
            <url>http://${nexus.url}/nexus/content/repositories/releases/</url> 
        </repository>
        <snapshotRepository>
            <id>nexus-snapshots</id>
            <name>Nexus Snapshot Repository</name>
            <url>http://${nexus.url}/nexus/content/repositories/snapshots/</url> 
        </snapshotRepository>
    </distributionManagement>
 

3. 估计已经迫不及待的尝试了

     mvn install

 

     Maven一般会先从本地读取jar文件,如果找不到再从远程服务器上读取, 如果之前在没有nexus下使用过mvn,可以先将本地仓库清空,之后在运行mvn install

 

 

  • 大小: 40.9 KB
分享到:
评论
1 楼 镜花水月EYE 2013-05-29  
谢谢分享。

相关推荐

    持续集成环境maven+nexus+jenkins+svn搭建

    "持续集成环境搭建" ...搭建一个完整的持续集成环境需要使用多种工具和技术,例如 Maven、Nexus、Jenkins 和 SVN 等。通过使用这些工具和技术,我们可以自动化构建、测试和部署软件,从而提高软件的质量和开发效率。

    持续集成环境hudson+nexus+maven搭建文档

    详细介绍持续集成环境hudson+nexus+maven搭建

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

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

    jenkins+maven+nexus+mantisBug

    【标题】"jenkins+maven+nexus+mantisBug"揭示了四个关键的IT技术领域,它们在软件开发的持续集成和缺陷管理流程中扮演着重要角色。这些技术分别是Jenkins、Maven、Nexus和MantisBug。 **Jenkins** 是一款开源的...

    全网最全Selenium3+Java+Maven+TestNG+ReportNG+SVN+Jenkins自动化测试环境搭建

    ### Selenium3+Java+Maven+TestNG+ReportNG+SVN+Jenkins自动化测试环境搭建 #### Java环境搭建 **一、安装JDK1.8** - **步骤**: 下载JDK安装包并按照向导指引进行安装,直至安装完成。 **二、配置JDK环境变量** ...

    nexus+maven.zip

    在搭建Nexus时,你需要准备一个符合系统需求的服务器环境,并按照官方文档的步骤进行安装。 在压缩包文件"nexus"中,我们可以假设包含了Nexus的安装文件、配置文件以及可能的启动脚本。通常,安装过程包括解压文件...

    nexus 搭建 maven仓库

    nexus 搭建 maven仓库nexus 搭建 maven仓库nexus 搭建 maven仓库nexus 搭建 maven仓库nexus 搭建 maven仓库

    springmvc+mybatis+mysql+log4j.xml+logjdbc+maven+nexus+dubbo

    该项目采用maven聚合工程,项目骨架是我们以前公司架构师搭建骨架,现在已经拆分出来供大家下载使用,可以扩展使用,里面用到技术有springmvc+mybatis+mysql+log4j.xml+logjdbc+maven+nexus+dubbo ,其中日志采用log...

    nexus+svn+jenkin_hudson+maven+禅道项目管理软件环境搭建一

    本篇将详细讲解如何结合Nexus、SVN、Jenkins(Hudson)、Maven以及禅道这五款工具,搭建一个适用于敏捷开发流程和持续集成理念的环境。这个环境能够极大地提升开发效率,简化项目管理流程。 **Nexus**: Nexus是一款...

    linux,nexus3.14+maven3.6.3.zip,搭建maven私服一步到位

    本教程将指导您在Linux环境下,利用Nexus 3.14和Maven 3.6.3快速搭建Maven私服。 首先,我们来看看所需的主要组件: 1. **Nexus 3.14**:这是Sonatype公司提供的开源仓库管理工具,它可以作为Maven私服,支持多种...

    nexus+svn+jenkin_hudson+maven+禅道项目管理软件环境搭建二

    在本篇中,我们将深入探讨如何构建一个完整的IT开发流程,包括使用Nexus作为Maven仓库、Subversion(SVN)作为版本控制系统、Jenkins(Hudson)进行持续集成、Maven作为构建工具,以及禅道(ZenDo)作为项目管理软件...

    Nexus2.7.2-03 + Maven3.1.1 + JAVA Project 管理

    包括: 1 Nexus 研究汇总(概念、作用、安装、管理操作) 2 Maven3 研究汇总(概念、作用、安装、核心流程、生命周期和阶段等核心、实用技术) 3用nexus搭建maven私服 4 eclipse+nexus+maven+JAVA Project管理实战

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

    我们所需的所有构件都需要通过maven的中央仓库和第三方的Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下载构件无疑加大了仓库的负载和浪费了外网带宽,如果网速慢的话

    搭建jenkens+Nexus+sonarqube自动化部署

    环境搭建需要安装JDK、Maven、Nexus和Jenkins,配置好环境变量和Maven仓库管理。 8. 自动化部署流程: 自动化部署流程包括项目构建、测试、代码分析和部署。Jenkins可以自动化整个流程,实现自动化部署。 本篇...

    使用Nexus搭建Maven私服

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

    Windows下 Git+Nexus+Hudson+Maven 整合

    个人整合网上资源加上自己的实践 成功的搭建了一套Git Nexus私服 Hudson管理的环境 并附有Checkout commit deploy 实例

    Maven Nexus 私服搭建

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

    基于Nexus搭建Maven私服详解(可用于生产环境)

    提供了基于Nexus搭建Maven私服所需要的一切资源和个人经验,搭建后可maven deploy 上传自己的jar包。别人如何在自己的maven项目中引用我将单独再上传一份。

Global site tag (gtag.js) - Google Analytics