摘要:有個(gè)時(shí)候多人多協(xié)作開發(fā)過程中,會(huì)存在臨時(shí)修改的二方包,同樣版本需要重新拉取的情況。發(fā)現(xiàn)大部分人包括自己長(zhǎng)久以來也是采用最原始的方法,一層層找到對(duì)應(yīng)的目錄刪除對(duì)應(yīng)的文件。某天實(shí)在是受不了了,寫了個(gè)小工具分享下,小代碼解決小問題。
有個(gè)時(shí)候多人多team協(xié)作開發(fā)過程中,會(huì)存在臨時(shí)修改的二方包,同樣版本需要重新拉取的情況。發(fā)現(xiàn)大部分人包括自己長(zhǎng)久以來也是采用最原始的方法,一層層找到對(duì)應(yīng)的目錄刪除對(duì)應(yīng)的文件。某天實(shí)在是受不了了,寫了個(gè)小工具分享下,小代碼解決小問題。
外部依賴: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":""" + "}"; MapcoordinateMap=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(); } } } }); } }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/69571.html
摘要:清除構(gòu)建緩存為每一個(gè)服務(wù)的構(gòu)建環(huán)境提供緩存,項(xiàng)目會(huì)對(duì)的安裝目錄,配置目錄,和本地倉(cāng)庫目錄提供了緩存,用戶通過以下設(shè)置清理緩存。本文檔詳細(xì)介紹了源碼構(gòu)建項(xiàng)目時(shí)的各種詳細(xì)設(shè)置與操作。 概述 根據(jù)大量的Rainbond用戶反饋,我們發(fā)現(xiàn)在Rainbond源碼構(gòu)建java-maven項(xiàng)目的過程中,最容易出現(xiàn)問題的一環(huán)就是獲取構(gòu)件失敗。 比如: [ERROR] Failed to execute...
摘要:簡(jiǎn)介是一個(gè)自動(dòng)為網(wǎng)頁添加的版本號(hào)插件支持的自動(dòng)壓縮,支持多種方法版本號(hào)添加,在使用時(shí)對(duì)代碼入侵,不需要在頁面上做任何標(biāo)記,對(duì)開發(fā)友好,不需要調(diào)整現(xiàn)在代碼直接引入中配置,會(huì)自動(dòng)對(duì)打包的頁面進(jìn)行處理該插件自動(dòng)采集文件的值進(jìn)行文件版本號(hào)修 jcv-maven-plugin 簡(jiǎn)介 jcv-maven-plugin是一個(gè)自動(dòng)為網(wǎng)頁添加js css的版本號(hào)maven插件 支持js css的自...
摘要:的主要思想是約定優(yōu)于配置。強(qiáng)烈建議遵循以上規(guī)范,避免不必要的麻煩。依賴傳遞依賴范圍除了控制,還會(huì)對(duì)依賴傳遞產(chǎn)生影響。此外還提供了和來進(jìn)一步管理依賴,分別稱為可選依賴和排除依賴。 showImg(https://segmentfault.com/img/remote/1460000012363876?w=1240&h=698); Maven 是跨平臺(tái)的項(xiàng)目管理工具,主要服務(wù)于基于Java...
摘要:基本配置環(huán)境變量環(huán)境變量中添加為主目錄在中添加使用阿里云中央倉(cāng)庫修改根目錄下文件夾中的文件,內(nèi)容如下創(chuàng)建基于的項(xiàng)目使用命令行創(chuàng)建使用原型插件創(chuàng)建工程。 「博客搬家」 原地址: 簡(jiǎn)書 原發(fā)表時(shí)間: 2017-03-23 Maven 是基于項(xiàng)目對(duì)象模型「POM」,可以通過一小段描述信息來管理項(xiàng)目的構(gòu)建、報(bào)告和文檔的軟件項(xiàng)目管理工具。本文總結(jié)了 Maven 的基本用法。 1. Maven...
摘要:一用途在創(chuàng)建項(xiàng)目的時(shí)候,可以自己手動(dòng)創(chuàng)建,也可以利用工具創(chuàng)建,也就是來創(chuàng)建??梢杂脕韯?chuàng)建項(xiàng)目部署項(xiàng)目安裝管理依賴編譯代碼管理二進(jìn)制等。的目的是使項(xiàng)目過程規(guī)范化自動(dòng)化高效化及強(qiáng)大的可擴(kuò)展性。 一、maven用途 java在創(chuàng)建項(xiàng)目的時(shí)候,可以自己手動(dòng)創(chuàng)建,也可以利用工具創(chuàng)建,也就是maven來創(chuàng)建。 maven可以用來創(chuàng)建項(xiàng)目、部署項(xiàng)目、安裝管理依賴、編譯代碼、管理二進(jìn)制等。 mave...
閱讀 1352·2021-11-11 11:00
閱讀 3121·2021-09-24 09:47
閱讀 5119·2021-09-22 15:53
閱讀 992·2021-09-10 10:50
閱讀 3235·2021-09-01 11:40
閱讀 1199·2019-08-30 15:55
閱讀 500·2019-08-30 12:49
閱讀 1086·2019-08-29 17:12