java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Maven的pom.xml中设置repository不起作用

解决Maven的pom.xml中设置repository不起作用问题

作者:水巷石子

这篇文章主要介绍了解决Maven的pom.xml中设置repository不起作用问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Maven的pom.xml中设置repository不起作用

举个例子

比如 Spring boot

    <repositories>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
        </repository>
    </repositories>

构建的时候,发现没有走到 spring-milestones。

这时,我们打开 Settings.xml (默认是阿里云镜像)

修改 mirrorOf<mirrorOf>*,!spring-milestones</mirrorOf> 即可。

maven的pom.xml中repositories的作用

在maven中pom.xml是Maven进行工作的主要配置文件,它的作用包括:配置Maven项目中需要使用的远程仓库,Maven项目的资源依赖关系等。

其中pom是Project Object Model(项目对象模型)的简称。

在pom.xml中repositories标签的作用是用来配置maven项目的远程仓库。

示例如下:

<repository>
    <id>nexus</id><!--远程仓库唯一标识符 -->
    <name>Private Repository</name><!--描述 -->
    <url><!--远程仓库url --></url>
    <layout>default</layout>
    <releases>  
        <enabled>true</enabled>  
    </releases>  
    <snapshots>
       <enabled>true</enabled>
       <updatePolicy>always</updatePolicy>
    </snapshots>
</repository>

我们先看一下<repositories>的配置,你可以在它下面添加多个<repository> ,每个<repository>都有它唯一的ID,一个描述性的name,以及最重要的,远程仓库的url。

此外,<releases><enabled>true</enabled></releases>告诉Maven可以从这个仓库下载releases版本的构件,而<snapshots><enabled>false</enabled></snapshots>告诉Maven不要从这个仓库下载snapshot版本的构件。

禁止从公共仓库下载snapshot构件是推荐的做法,因为这些构件不稳定,且不受你控制,你应该避免使用。

当然,如果你想使用局域网内组织内部的仓库,你可以激活snapshot的支持

layout:用于定位和排序构件的仓库布局类型-可以是default(默认)或者legacy(遗留)。

Maven 2为其仓库提供了一个默认的布局;然而,Maven 1.x有一种不同的布局。

我们可以使用该元素指定布局是default(默认)还是legacy(遗留)。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文