原文链接:https://blog.youkuaiyun.com/lipei1220/article/details/88947555
总结:解决相同版本号,修改时间不同,如何获取最新内容。
过程:maven在build后从maven服务器Downloading 最新的maven-metadata.xml这个文件可以看作版本信息,作为一个版本比对,和本地仓库(.m2/repository)中jar包文件夹下的maven-metadata-local.xml(本地jar包maven-metadata.xml的副本)做比较,看lastUpdated时间戳值,哪个值更大,就以哪个文件为准。这里需要注意的是,若是maven-metadata-local.xml文件的值大,这时候就中止下载了,直接使用本地的jar包,所以你得自己准备好自己想用的jar包。
更新策略:
找到本地的maven配置文件settings.xml,打开后找到下面:
<repository>
<id>snapshots</id>
<name>Snapshots</name>
<url>url</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
找到xml中的updatePolicy标签,改为never即可。
<repository>
<id>snapshots</id>
<name>Snapshots</name>
<url>url</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</snapshots>
</repository>
改完后再去build就不会去download maven-metadata.xml文件了,根据自己需求改。这个属性为更新策略,aways:每次,never:从不,daily:每日。
xml格式
<?xml version="1.0" encoding="UTF-8"?>
<metadata modelVersion="1.1.0">
<groupId>com.jd.passport</groupId>
<artifactId>login-server-rpc</artifactId>
<version>5.1.8-SNAPSHOT</version>
<versioning>
<snapshot>
<timestamp>20151215.034013</timestamp>
<buildNumber>2</buildNumber>
</snapshot>
<lastUpdated>20180129015856</lastUpdated>
<snapshotVersions>
<snapshotVersion>
<extension>jar</extension>
<value>5.1.8-20151215.034013-2</value>
<updated>20151215034013</updated>
</snapshotVersion>
<snapshotVersion>
<extension>pom</extension>
<value>5.1.8-20151215.034013-2</value>
<updated>20151215034013</updated>
</snapshotVersion>
</snapshotVersions>
</versioning>
</metadata>