jenkins如何清缓存_Maven本地缓存清理小工具
有个时候多人多team协作开发过程中,会存在临时修改的二方包,同样版本需要重新拉取的情况。发现大部分人包括自己长久以来也是采用最原始的方法,一层层找到对应的目录删除对应的文件。某天实在是受不了了,写了个小工具分享下,小代码解决小问题。
外部依赖:fastjson,commons-io,commons-lang3,不要嘲笑,有工具干嘛不用呢,非得造轮子吗。
import com.alibaba.fastjson.JSON;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils;
import java.io.File;
import java.io.IOException;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.HashMap;
import java.util.Map;
/**
* @author tjw
*/
public class MavenLocalRepoCleaner {
/**
* coordinateJson
* {
* "groupId1":"artifactId1:version1,artifactId2:version2...",
* "groupId2":"artifactId:version,..."
* }
*/
public static void main(String[] args) {
String coordinateJson="{"
+ "\"top.xbynet.xxx\":\"\""
+ "}";
Map coordinateMap=JSON.parseObject(coordinateJson,HashMap.class);
Path m2Repo= Paths.get(System.getProperty("user.home"),".m2","repository");
coordinateMap.entrySet().stream().forEach(v->{
String groupId=v.getKey();
groupId = groupId.replace('.', File.separatorChar);
if(StringUtils.isBlank(v.getValue())){
Path dir = Paths.get(m2Repo.toString(), groupId);
try {
FileUtils.deleteDirectory(dir.toFile());
} catch (IOException e) {
e.printStackTrace();
}
}else {
String[] artfactIdVers = v.getValue().split(",");
for (String str : artfactIdVers) {
String ver = "";
if (str.contains(":")) {
ver = str.split(":")[1];
}
String artfactId = str.split(":")[0];
Path dir = Paths.get(m2Repo.toString(), groupId, artfactId, ver);
try {
FileUtils.deleteDirectory(dir.toFile());
} catch (IOException e) {
e.printStackTrace();
}
}
}
});
}
}
jenkins如何清缓存_Maven本地缓存清理小工具相关推荐
- 同时存多个变量缓存 微信小程序_微信小程序 缓存(本地缓存、异步缓存、同步缓存)详解...
微信小程序 缓存 关于本地缓存 1.wx.setStorage(wx.setStorageSync).wx.getStorage(wx.getStorageSync).wx.clearStorage( ...
- 客户端缓存(http缓存和本地缓存)
原文链接:https://juejin.im/post/6844904194680291342 http缓存 http缓存用于客户端储存一些不经常变化的静态文件(图片.css.js等).分为强制缓存和 ...
- 论微服务接入Redis缓存和本地缓存,提高性能并发第一步!
一.缓存的概念 首先引入缓存还是有几个问题要问的 1.为什么要用缓存 2.项目中缓存是如何使用的 3.常见的缓存问题 带着这几个问题进行下面的学习 为什么需要缓存? 我们用缓存主要有两个原因 1,缓存 ...
- MyBatis 缓存详解-一级缓存(本地缓存)介绍
一级缓存也叫本地缓存,MyBatis 的一级缓存是在会话(SqlSession)层面进行缓存的.MyBatis 的一级缓存是默认开启的,不需要任何的配置. 首先我们必须去弄清楚一个问题,在MyBati ...
- 服务端分布式缓存与本地缓存
缓存技术是保障系统性能的基础技术.核心技术. 缓存发挥的作用 ① 最大程度上避免对数据库的并发查询,从而降低因为数据库资源不足导致的系统故障. ② 提升系统的响应速度,保证用户体验 总之缓存使系统稳定 ...
- 分布式缓存与本地缓存的区别
分布式缓存与本地缓存的区别 转载自:https://ost.51cto.com/posts/1002 缓存的概念: 在服务端中,缓存主要是指将数据库的数据加载到内存中,之后对该数据的访问都在内存中完成 ...
- 分布式缓存和本地缓存的区别
分布式缓存和本地缓存的区别 redis/memcached**分布式缓存**和map/guava**本地缓存**的区别 什么是缓存一致性? redis/memcached分布式缓存和map/guava ...
- 前端缓存 (http缓存 与 本地缓存)
前端缓存主要是分为http缓存和本地缓存 http 缓存 强缓存:Expires(过期时间)/ Cache-Control(no-cache)(优先级高) 协商缓存:Last-Modified/Eta ...
- 从架构上来理解redis缓存和本地缓存的关系
redis缓存和本地缓存混用是一种非常实用的实践方式. 优点:极大地降低了redis的读写频率,特别是处理特别耗时的业务逻辑(大于1分钟). 缺点:会产生一定的延时,这个延时具体的影响将会根据业务的差 ...
- 缓存基础----本地缓存、分布式缓存以及多级缓存
目录 一.缓存的概念(什么是缓存) 二.为什么要用缓存(为什么要用redis作为缓存) 三.缓存的分类有哪些 1.本地缓存 2.分布式缓存 3.多级缓存 像MySql等传统的关系型数据库已经不能适用于 ...
最新文章
- php7-fpm webtatic,如何在 CentOS 7 中使用 Nginx 和 PHP7-FPM 安装 Nextcloud
- restful可以转发么_什么是RESTFUL?REST的请求方法有哪些,有什么区别?
- Leetcode 剑指 Offer 58 - II. 左旋转字符串 (每日一题 20210830)
- Linux 下 微擎 的安装使用
- 如果地球突然停止转动,那么接下来会发生什么?
- 正则表达式-匹配时间
- 多屏显示 全屏后在副显示器_多屏生产力有多重要?联想ThinkVision思逸14显示器...
- jsp大学计算机知识点,大学计算机规划教材:JSP大学实用教程
- PHP代码审计基础知识
- pinpoint集群的安装配置
- VBA checkbook动态添加后,添加事件方式
- 同个网络的两台计算机怎么设置局域网,两台电脑怎么样连在同一个局域网
- apex英雄机器人探路者怎么玩_Apex英雄探路者玩法技巧攻略
- 华为服务体系:ITR流程体系详解
- 渗透学习日记day5
- 用Python做一个好玩的朋友圈九宫格抽奖
- 编译安装Linux内核(以5.10.104版本为例)
- Android 实战 - 天气(有缺陷)APP
- 解耦的概念、spring实现解耦的概述
- python + snownlp 正负面分析