maven中 snapshot包以及release包更新,maven拉取不到最新的包更新怎么办

本文介绍了 maven包的版本有两类,一类是 SNAPSHOT,一类是 RELEASE,maven snapshot包更新,maven release包更新,maven拉取不到最新版本的包如何处理

maven包的版本有两类,一类是 SNAPSHOT,一类是 RELEASE。

这两类有个重要的区别,RELEASE 的包需要改 pom.xml 中的 version 的时候才会引入其他版本(如新版本),但是 SNAPSHOT 允许不改 version 而引入新版本(自动通过时间戳判断,那 SNAPSHOT 是怎么做到的呢? SNAPSHOT 就是为了应对 “被依赖者频繁改版本号导致依赖者需要频繁修改pom.xml的版本” 的问题。例如A依赖B,B在开发过程中,所以B肯定是经常变动的,每次变动时都得通知A修改版本,会疯掉的。如果B是SNAPSHOT版本,B更改后,A并不需要修改pom.xml中的版本就可以不断拉取到B的更新。

但是有个问题,B虽然是SNAPSHOT的,但是maven或者说IDE(Eclipse或IDEA)并不是非常频繁去拉取更新,比如你项目依赖的这个jar是今天下载的,接着有人推了新版jar到私库,要等到明天才会检查到本地的jar的时间戳落后于私库上的,因此这种按天的触发频率太慢了,如何手动触发?

更新snapshot版本的包

如何手工触发拉取最新的SNAPSHOT版本的jar?

  • 使用 -U 参数。在命令行或 IDEA 里执行 mvn clean compile -U 即可触发重新拉取

  • 配置IDE,以 IDEA 为例,在设置中勾上 Always update snapshots,在手工点击右侧Maven的刷新按钮即可触发

  • 改 maven的 settings.xml文件

  • 手工删除本地仓库的jar包,并点击 IDEA 右侧Maven的刷新按钮触发重新拉取。

使用 -U参数

使用 mvn clean compile -U 来实现拉取最新的snapshot版本的jar
mvn compile -U

  • -U 是强制检查的意思,-U并不是每次都会拉最新的,只有在时间戳落后于私库上的jar的时候才会下载最新

  • 注意一下 -U,检查的是时间戳是否落后,并不是日期是否落后,时间戳是更加精确的。如下 20200821.101436-8 就是时间戳

配置IDEA

使用idea的,勾上 “Always update snapshots”

idea 默认是没有勾上的

idea snapshot

勾上后点击一下 IDEA 中右边的Maven的刷新按钮
maven刷新

配置 settings.xml

修改settings.xml,在 repository 和 pluginRepository 下配置总是更新Maven snapshots依赖:

maven setting.xml

参数解释:
参数解释

删除本地私服jar

手工删除本地仓库的jar,点击maven的刷新按钮即可触发重新拉取

上一篇 下一篇


推荐文章

  • Maven仓库说明

    本文介绍了maven仓库的概念,maven本地库,远程库,中央库的区别
    日期: 2023-02-24
  • SQLite 数据更新前后的触发器

    本文介绍了 sqlite中数据更新前后的触发器
    日期: 2023-02-24
  • SQLite 按条件更新数据

    本文介绍了 sqlite按条件更新数据 update by where
    日期: 2023-02-23
  • PostgreSQL update 更新数据

    本文介绍了 postgresql 更新数据 update语句
    日期: 2023-02-17
  • maven是做什么用的

    本文介绍了 maven工程工具的作用,maven的作用是:1、在文件中添加相应的配置,maven就会自动的下载相应的jar包;2、下载依赖,只要配置的jar包所依赖的其他jar包都会被它自动下载下来; 3、可以直接通过它打包war或者jar项目。
    日期: 2023-01-06
  • maven下载,maven安装,maven配置

    本文介绍了Maven的下载安装以及Maven环境变量设置,windows、Linux、mac环境下maven环境变量设置教程,maven环境变量配置,maven下载,maven安装
    日期: 2022-11-10
  • Maven配置文件setting.xml配置, maven repository 设置

    本文介绍了Maven的setting.xml配置文件配置,如何修改远程私服地址,本地私服仓库目录修改,阿里云私服如何配置,如何配置maven repository 设置
    日期: 2022-11-10
评论
说点什么吧?

发表评论

取消回复
  最新文章