欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

maven多仓库配置 公司仓库和阿里仓库

程序员文章站 2022-06-20 08:50:58
针对公司内网私服仓库,私服仓库不能访问外网,此时无法在私服仓库代理阿里的maven仓库。我们的maven就需要配置多个仓库: maven目录下的conf/settings.xml配置文件: 一、在profiles标签内新建profile,配置一个公司的仓库和阿里的仓库; ......

针对公司内网私服仓库,私服仓库不能访问外网,此时无法在私服仓库代理阿里的maven仓库。我们的maven就需要配置多个仓库:

maven目录下的conf/settings.xml配置文件:

一、在profiles标签内新建profile,配置一个公司的仓库和阿里的仓库;

    <profile>
<id>nexus</id> <repositories> <repository> <id>maven-releases</id> <url>http://192.168.0.54:8899/ajco/repository/maven-releases/</url> <releases> <enabled>true</enabled> <updatepolicy>always</updatepolicy> </releases> <snapshots> <enabled>true</enabled> <updatepolicy>always</updatepolicy> </snapshots> </repository> <repository> <id>maven-snapshots</id> <url>http://192.168.0.54:8899/ajco/repository/maven-snapshots/</url> <releases> <enabled>true</enabled> <updatepolicy>always</updatepolicy> </releases> <snapshots> <enabled>true</enabled> <updatepolicy>always</updatepolicy> </snapshots> </repository> </repositories> <pluginrepositories> <pluginrepository> <id>maven-releases</id> <url>http://192.168.0.54:8899/ajco/repository/maven-releases/</url> <releases> <enabled>true</enabled> <updatepolicy>always</updatepolicy> </releases> <snapshots> <enabled>true</enabled> <updatepolicy>always</updatepolicy> </snapshots> </pluginrepository> <pluginrepository> <id>maven-snapshots</id> <url>http://192.168.0.54:8899/ajco/repository/maven-snapshots/</url> <releases> <enabled>true</enabled> <updatepolicy>always</updatepolicy> </releases> <snapshots> <enabled>true</enabled> <updatepolicy>always</updatepolicy> </snapshots> </pluginrepository> </pluginrepositories> </profile> <profile> <id>aliyun</id> <repositories> <repository> <id>central</id> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> </repository> </repositories> <pluginrepositories> <pluginrepository> <id>central</id> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> </pluginrepository> </pluginrepositories> </profile>

 

二、在activeprofiles标签内配置activeprofile,激活上面的仓库,activeprofile里的值对应上面profile里的id值

    <activeprofile>nexus</activeprofile>
    <activeprofile>aliyun</activeprofile>

 

    说明:

        1.这里aliyun仓库的id设置为central,则会覆盖maven里默认的远程仓库。

        2.aliyun的仓库也可以不用配置,直接在mirrors标签内配置一个镜像仓库,mirrors镜像仓库mirrorof的值设置为central,则也可以实现覆盖默认的仓库

      <mirror>
          <id>alimaven</id>
          <mirrorof>central</mirrorof>
          <name>aliyun maven</name>
          <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
      </mirror>

 

配置maven deploy:

一、在servers标签内新建server标签,定义一个登录私服的账号密码配置;

    <server>
        <id>deploymentrepo</id>
        <username>repouser</username>
        <password>repopwd</password>
    </server>

 

二、项目的pom.xml文件加入如下配置,id对应上面的server里的id,表示deploy时上传到下面的仓库,用上面的账号密码;

    <distributionmanagement>
        <repository>
            <id>deploymentrepo</id>
            <url>http://192.168.0.54:8899/ajco/repository/maven-releases/</url>
        </repository>
        <snapshotrepository>
            <id>deploymentrepo</id>
            <url>http://192.168.0.54:8899/ajco/repository/maven-snapshots/</url>
        </snapshotrepository>
    </distributionmanagement>