Linux -- Maven关于私库(Nexus3)的使用

关于Maven私服的搭建可以参考我这篇博客:https://my.oschina.net/u/2963821/blog/1806035

一、pepositories说明

maven-central:maven中央库,默认从https://repo1.maven.org/maven2/拉取jar
maven-releases:私库发行版jar
maven-snapshots:私库快照(调试版本)jar
maven-public:仓库分组,把上面三个仓库组合在一起对外提供服务,在本地maven基础配置settings.xml中使用。

二、私库的使用

1.单一项目设置远程仓库

在Maven project中pom.xml文件添加以下信息

<repositories> 
    <repository> 
        <id>nexus</id> 
        <name>Nexus3 Repository</name>
        <!-- 此为仓库地址 --> 
        <url>http://192.168.230.129:8081/repository/maven-public/</url> 
    </repository> 
</repositories>

代码中url标签的路径在Repositories中选择需要的仓库,点击URL字段下的copy进行复制

2.所有项目设置远程仓库

修改Maven的配置文件settings.xml

2.1)setting.xml添加如下信息

<profiles>
  
    <profile> 
      <id>NexusRepo</id> 
      <repositories> 
        <repository> 
          <id>nexus</id> 
          <name>Nexus3 Repository</name> 
          <url>http://192.168.230.129:8081/repository/maven-public/</url> 
          <releases> 
            <enabled>true</enabled> 
          </releases> 
          <!-- snapshots默认是关闭的,需要手动开启 --> 
          <snapshots> 
            <enabled>true</enabled> 
          </snapshots> 
        </repository>
      </repositories> 
    </profile>

    
  </profiles>

  <activeProfiles>
    <activeProfile>NexusRepo</activeProfile>
  </activeProfiles>

: 此种方法如果远程仓库关闭或意外退出,在maven构建时会到中央仓库去查找jar包

2.2)setting.xml添加如下信息

<mirror>
      <id>nexus-tout</id>
      <!-- *号代表所有仓库,此处也可以单独设置,以逗号隔开 -->
      <mirrorOf>*</mirrorOf>
      <name>Nexus3 tout</name>
      <url>http://192.168.230.129:8081/repository/maven-public/</url>
</mirror>

:这个方法跟添加阿里云的镜像是一样的,且都会使上面2.1)的配置不生效

3.发布jar包

如果想发布项目的jar包,可以配置如下信息:

  • Maven project中pom.xml文件添加以下信息
  <distributionManagement> 
    <repository> 
      <id>maven-releases</id> 
      <name>maven releases</name> 
      <url>http://192.168.230.129:8081/repository/maven-releases/</url> 
    </repository> 
    <snapshotRepository> 
      <id>maven-snapshots</id> 
      <name>maven snapshots</name> 
      <url>http://192.168.230.129:8081/repository/maven-snapshots/</url> 
    </snapshotRepository> 
  </distributionManagement>
  • setting.xml添加如下信息
  <servers>
    <server> 
      <id>maven-releases</id> 
      <username>admin</username> 
      <password>admin123</password> 
    </server> 
    <server> 
      <id>maven-snapshots</id> 
      <username>admin</username> 
      <password>admin123</password> 
    </server> 
  </servers>

:上下id必须一致!!

然后就可以deploy,构建上传jar包了

猜你喜欢

转载自my.oschina.net/u/2963821/blog/1806257
今日推荐