一.Nexus安装

1.Nexus介绍

  • 是种特殊的Maven仓库一般用于公司

2.Nexus安装

https://www.sonatype.com/oss-thank-you-win64.zip 下载并解压如下

  • 执行命令安装私服(使用管理员权限在dos下执行命令安装私服)
nexus.exe /install //安装
nexus.exe /uninstall//卸载
net start nexus //启动
net stop nexus//停止

3.配置Nexus

在etc目录下的nexus-default.properties配置Nexus端口、IP、上下文路径

  • application-host : Nexus服务监听的主机
  • application-port: Nexus服务监听的端口
  • nexus-context-path : Nexus服务的上下文路径

4.启动服务

5.找到私服的url

http://localhost:8081/nexus/#welcome

登录

默认用户 密码
admin/admin123

二.私服仓库类型

  • hosted:宿主仓库(存放本公司开发的jar包(正式版本 测试版本 第三方:存在版权问题的-Oracle))
  • proxy:代理仓库(代理中央仓库,apache下测试版本的jar包)
  • group:组仓库(将来连接组仓库。包含Hosted:宿主仓库,proxy:代理仓库)
  • virtual:虚拟仓库(被废弃了的仓库)

三.上传jar包到私服

1.在maven目录下conf/setting.xml认证:配置用户名和密码

<servers>
 <server>
      <id>releases</id> <!--宿主仓库-->
      <username>admin</username>
      <password>admin123</password>
    </server>
    <server>
          <id>snapshots</id><!--宿主仓库-->
          <username>admin</username>
          <password>admin123</password>
    </server>

    </servers>

2.在将要上传的项目的pom.xml中配置jar包上传路径url

  • 我们上传ssh-dao
<distributionManagement>
  <repository>
      <id>releases</id>
      <url>http://localhost:8081/nexus/repository/maven-releases</url><!--私服对应url-->
    </repository>
    <snapshotRepository>
      <id>snapshots</id>
      <url>http://localhost:8081/nexus/repository/maven-snapshots</url><!--私服对应url-->
    </snapshotRepository>
  </distributionManagement>

3.执行命令发布项目到私服(上传)-执行deploy


四.从私服上下载jar包到本地仓库

1.在maven目录下conf/setting.xml配置模板

    <profile>
        	<!--profile的id-->
      <id>dev</id>
      <repositories>
        <repository>
        	<!--仓库id,repositories可以配置多个仓库,保证id不重复-->
          <id>nexus</id>
          <!--仓库地址,即nexus仓库组的地址-->
          <url>http://localhost:8081/nexus/repository/maven-public</url>
          <!--是否下载releases构件-->
          <releases><enabled>true</enabled></releases>
           <!--是否下载snapshots构件-->
          <snapshots><enabled>true</enabled></snapshots>
        </repository>
      </repositories>
     <pluginRepositories>
     	<!--插件仓库,maven的运行依赖插件,也需要从私服下载插件-->
        <pluginRepository>
        	<!--插件仓库的id不允许重复,如果重复后边配置会覆盖前边-->
          <id>public</id>
          <name>Public Repositories</name>
          <url>http://localhost:8081/nexus/repository/maven-public</url>
        </pluginRepository>
      </pluginRepositories>
    </profile>

2.激活模板(也是放在maven下的setting.xml中)

<activeProfiles>
        <activeProfile>dev</activeProfile>
</activeProfiles>

3.测试下载

  • 我们先去把本地仓库的对应项目jar包整体删掉
  • 发现项目还没有报错,因为现在每个项目都打开,所以依赖的是项目,而不是jar包
  • 关掉ssh-dao项目,报错 之后就去私服上下载了,之后查看本地仓库又存在了对应的包

Maven私服搭建(nexus)

02-13 20:31