美文网首页自动化测试
nexus3:maven私仓搭建

nexus3:maven私仓搭建

作者: 千叶鸟 | 来源:发表于2017-12-14 09:17 被阅读36次

    使用原因

    1. 将第三方jar包(或其它类型的包)发布到私仓上,以便通过maven(或其它包管理工具)进行统一的依赖管理
    2. 提高下载速度(你知道国内通过maven官方仓库更新依赖是很慢的)
    3. 。。。。。。

    环境支持

    JDK Maven

    安装

    下载地址:https://www.sonatype.com/download-oss-sonatype
    提供了Nexus Repository Manager OSS 3.xNexus Repository Manager OSS 2.x两个版本

    这里我们采用3.x的版本,且以windows为例:
    下载得到

    mark
    将其解压到任一目录
    在终端中执行:
    {NEXUS_HOME}\nexus-3.6.2-01\bin\nexus.exe /run
    
    mark

    PS:端口在{NEXUS_HOME}\sonatype-work\nexus3\etc\nexus.properties文件中可修改

    通过浏览器,访问localhost:8081即可进入nexus的管理页面

    配置与说明

    登录默认管理员账号:admin/admin123


    mark

    创建一个仓库(Create Repositories)

    mark

    按照里面提示,一步步操作就好,值得注意的地方主要是hosted类型的仓库记得修改如下:


    mark

    Maven配置

    1.找到{MAVEN_HOME}\conf\settings.xml
    2.在Servers节点下添加(可以根据角色配置多个):

    <server>
        <id>nexus</id>
        <username>admin</username>
        <password>admin123</password>
    </server>
    

    2.在Mirrors节点下添加:

    <mirror>
        <id>nexus</id>
        <name>{name}</name>
        <url>http://{host}:{port}/repository/maven-public/</url>
        <mirrorOf>central</mirrorOf>
    </mirror>
    

    使用与发布

    发布maven项目

    1. 在pom文件中的project节点中的最后添加:
    <distributionManagement>
        <repository>
            <id>{server ID}</id>   <!--setting.xml中server的id-->
            <name>{repository name}</name> <!--Nexus中repository的名字-->
            <url>{repository URL}</url>  <!--Nexus中repository的URL-->
        </repository>
    </distributionManagement>
    
    1. 执行Maven命令:
    mvn deploy -DskipTests
    

    发布独立jar包

    mvn deploy:deploy-file -DgroupId={group} -DartifactId={artifact} -Dversion={vsersion} -Dpackaging=jar -Dfile={jar path} -Durl=http://{host}:{port}/repository/{repository name}/ -DrepositoryId={server id}
    

    参数说明:
    groupartifactvsersion对应Maven中的三个坐标参数
    jar path为你要发布的jar的绝对路径
    hostport为你私仓的主机地址和端口
    repository name为你要发布到的repository的URL(可在nexus中copy)
    server id对应了在maven中配置的server的ID(如果server所对应的角色权限不足,则会发布失败)

    相关文章

      网友评论

        本文标题:nexus3:maven私仓搭建

        本文链接:https://www.haomeiwen.com/subject/axyhwxtx.html