1. 场景描述

maven库用的是公司私服和阿里云结合的方式(maven多仓库配置),本项目maven依赖的有其他项目组的jar包(单点登录),但是天有不测风云,依赖单点登录的好几个jar包,在编译(build)的时候一直Downloading,卡死了。

2. 解决方案

2.1 问题定位

以前好好的,突然不行了,首先肯定先找jar包提供方,然而单点登录项目组回复N久没动了,看了maven库jar包是没变化,里面的日期也没变化,但是几个同事都不能更新了,肯定是私服上的jar包有变化了,看了下私服上md5、sha1这些好像变化了。。但是也不确定,也不好说,还是看看怎么解决吧。

2.2 解决方案

问题原因是服务器配置文件跟本地文件进行对比(maven-metadata.xml),通过里面的时间戳进行对比,本地日期大于等于服务器jar包日期,不更新jar包;服务器日期大于本地库日期,更新jar包,问题就出在maven-metadata这个问题文件上了。

两个解决方案

2.2.1 更改setting文件。

本人maven配置文件在:E:\m2下,打开文件,找到jar包对应的仓库。

<updatePolicy>always</updatePolicy>

-----------------更改为----------
<updatePolicy>never</updatePolicy>

updatePolicy有三个参数:aways:每次,never:从不,daily:每日,这样就可以编译成功了。

2.2.2 重新下载

当Downloading卡住了,首先停止服务,去本地maven仓库(本人:E:\m2\repository)下面找到该jar包对应文件夹,在文件夹里面会有个lock后缀的文件,就是在比对过程中出问题了,文件锁住了,删除了该lock文件,但是测试了下不行,下载还是会有问题,要删除了整个文件夹,例如“E:\m2\repository\com\oracle\ojdbc6\11.2.0.3,把文件夹11.2.0.3整个给删除了,重新编译下载,因为整个文件夹都没有了,maven编译的时候就会去下载该jar包,相当于新的下载,不会去比对,这样就可以直接通过了。

2.2.3 结论

建议采用第二种,原因:

(1)直接,快速,直接把jar包对应的文件夹删除了,重新下载就好了。

(2)第一种方案会存在问题,假如外围系统jar包正常更新了,版本没变化,但是增加了新的方法,这样就更新不到新的方法了,会有问题。


I’m 「软件老王」,如果觉得还可以的话,关注下呗,后续更新秒知!欢迎讨论区、同名公众号留言交流!

maven-build-downloading的更多相关文章

  1. run as maven build时报错

    eclipse中使用maven插件的时候,运行run as maven build的时候报错 -Dmaven.multiModuleProjectDirectory system propery is ...

  2. maven:log4j:WARN No appenders could be found for logger (loggerInfo).或者maven build error:org.apache.maven.lifecycle.LifecycleExecutionExceptio

    maven在build构建时,加载资源文件时需要配置资源文件插件: 1,在pom.xml文件中加入 <build> <finalName>${project.build.tar ...

  3. 在eclipse如何删除无效的maven build

    在Eclipse的maven项目中,点击一次“maven build...”明明没有配置,它也就会产生一个maven build,那么如何删除这些无效的配置呢?

  4. Maven Build Profiles--reference

    What is Build Profile? A Build profile is a set of configuration values which can be used to set or ...

  5. Maven Build Life Cycle--reference

    What is Build Lifecycle? A Build Lifecycle is a well defined sequence of phases which define the ord ...

  6. No compiler is provided in this environment. --Maven build失败

    今天,maven build 失败了, 遇到下面的问题 经过查找,通过这个大佬的blog(  https://blog.csdn.net/lslk9898/article/details/738367 ...

  7. Spring Boot-右键maven build成功但是直接运行main方法出错的解决方案

    1.代码就一个Controller,从官网复制过来的,如下 package com.springboot.controller; import org.springframework.boot.Spr ...

  8. 转:eclipse maven build、maven install 等区别

    原文地址:eclipse maven build.maven install 等区别

  9. maven build的常用生命周期

    常用的maven build goals: validate - validate the project is correct and all necessary information is av ...

  10. eclipse中的maven build、maven clean、maven install和maven test的区别

    eclipse中的maven build.maven clean.maven install和maven test的区别 https://www.cnblogs.com/Marydon20170307 ...

随机推荐

  1. JVM(七):JVM内存结构

    JVM(七):JVM内存结构 在前几节的文章我们多次讲到 Class 对象需要分配入 JVM 内存,并在 JVM 内存中执行 Java 代码,完成对象内存的分配.执行.回收等操作,因此,如今让我们来走 ...

  2. 高并发IM系统架构优化实践

    互联网+时代,消息量级的大幅上升,消息形式的多元化,给即时通讯云服务平台带来了非常大的挑战.高并发的IM系统背后究竟有着什么样的架构和特性? 以上内容由网易云信首席架构师内部分享材料整理而成 相关阅读 ...

  3. spring boot 2.x 系列 —— spring boot 整合 servlet 3.0

    文章目录 一.说明 1.1 项目结构说明 1.2 项目依赖 二.采用spring 注册方式整合 servlet 2.1 新建过滤器.监听器和servlet 2.2 注册过滤器.监听器和servlet ...

  4. VS2017 编译 Visual Leak Detector + VLD 使用示例

    起因 一个Qt5+VS2017的工程,需要进行串口操作,在自动时发现一段时间软件崩溃了,没有保存log,在 debug 的时候发现每运行一次应用占据的内存就多一点,后来意识到是内存泄漏了.这个真是头疼 ...

  5. 【转载】一起来学Spring Cloud | Eureka Client注册到Eureka Server的秘密

    LZ看到这篇文章感觉写得比较详细,理解以后,便转载到自己博客中,留作以后回顾学习用,喝水不忘挖井人,内容来自于李刚的博客:http://www.spring4all.com/article/180 一 ...

  6. PCA(主成分分析)算法

    设有\(m\)个指标,\(n\)个样本的原始数据 将原始数据按列组成矩阵 \(X _ { n \times m }\) 将\(X\) 的每一列进行中心化 求\(X\)的协方差矩阵\(\Sigma _ ...

  7. Selenium Grid分布式测试环境搭建

    Selenium Grid简介 Selenium Grid实际上是基于Selenium RC的,而所谓的分布式结构就是由一个hub节点和若干个node代理节点组成.Hub用来管理各个代理节点的注册信息 ...

  8. canvas多彩粒子星空背景

    HTML5 canvas 实现多颜色粒子星空页面背景,喜欢的可以收藏.自己可以定义颜色,粒子透明度,粒子数量,粒子大小. 预览效果图如下: 1.获取canvas上下文,并且动态设置canvas尺寸和屏 ...

  9. vboxnetctl: no such file or directory

     sudo /Library/StartupItems/VirtualBox/VirtualBox restart sudo /Library/StartupItems/VirtualBox/Vir ...

  10. SQL Server 2016 + AlwaysOn 无域集群

    目录 AlwaysOn 搭建 WSFC 配置计算机的 DNS 后缀 安装故障转移集群 验证集群 创建集群 创建文件共享见证 配置 AlwaysOn 新建可用性组 创建侦听器 可读副本的负载均衡 主角色 ...