博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
读取资源目录文件
阅读量:6234 次
发布时间:2019-06-21

本文共 2449 字,大约阅读时间需要 8 分钟。

项目中很普遍使用maven进行项目的构建,但是使用maven时,由于网络不稳定,或者需要FQ等因素,导致部分jar可能下载失败,只能重新下载才能使项目正常启动。
如何快速找到那个依赖报错了呢?不多唠叨了,见下文解决方案:
 
1 package cn.xxx.webservice; 2  3 import java.io.*; 4 import java.util.*; 5  6 import org.slf4j.Logger; 7 import org.slf4j.LoggerFactory; 8  9 /**10  * 11  * @Title: TestIo12  * @Description: 通过读取指定的目录及子目录下指定文件名的路径,获取需要的资源,返回结果为List14  * @date 2018年5月8日 下午9:29:3515  */16 public class TestIo {17 18     private static Logger logger = LoggerFactory.getLogger(TestIo.class);19 20     /**21      * 22      * @Title: getListFiles  23      * @Description: 通过制定路径,后缀,以及是否循环遍历子目录来获取目录下的资源文件25      * @date 2018年5月8日 下午8:33:3126      * @param path 文件路径27      * @param suffix 后缀名, 为空则表示所有文件28      * @param flag 是否遍历子目录29      * @return List
33 */34 public static List
getFilesList(String path, String suffix, boolean flag) {35 List
lstFileNames = new ArrayList
();36 File file = new File(path);37 return TestIo.listFile(lstFileNames, file, suffix, flag);38 }39 40 // aether-ed239b5e-5ab7-49c1-8f71-df76605fb76e-spring-beans-5.0.5.RELEASE.jar.sha1-in-progress41 // 以in-progress为结尾的为下载失败的依赖,常见的下载依赖失败的后缀,.sha1-in-progress/.jar-in-progress/.pom-in-progress42 private static List
listFile(List
lstFileNames, File f, String suffix, boolean flag) {43 // 若是目录, 采用递归的方法遍历子目录44 if (f.isDirectory()) {45 File[] t = f.listFiles();46 47 for (int i = 0; i < t.length; i++) {48 if (flag || t[i].isFile()) {49 listFile(lstFileNames, t[i], suffix, flag);50 }51 }52 } else {53 String filePath = f.getAbsolutePath();54 if (!suffix.equals("")) {55 int begIndex = filePath.lastIndexOf("."); // 最后一个.(即后缀名前面的.)的索引56 String tempsuffix = "";57 58 if (begIndex != -1) { // 这里可以筛选指定后缀的文件59 tempsuffix = filePath.substring(begIndex + 1, filePath.length());60 // sha1-in-progress包含in-progress61 // 这里因为指定的后缀与截取.的后缀,名字不一致,所以加一个|| tempsuffix.contains(suffix)条件62 if (tempsuffix.equals(suffix) || tempsuffix.contains(suffix)) {63 lstFileNames.add(filePath);64 }65 }66 } else {67 lstFileNames.add(filePath);68 }69 }70 return lstFileNames;71 }72 73 public static void main(String[] args) {74 List
list = getFilesList("G:\\repository", "in-progress", true);75 logger.debug("依赖下载失败的个数:{}",list.size());76 logger.info("依赖下载失败的依赖目录:{}",list);77 }78 }

 

转载于:https://www.cnblogs.com/summary-2017/p/9009201.html

你可能感兴趣的文章
React as a UI Runtime(四、条件)
查看>>
flutter中的异步
查看>>
IoC容器初始化过程(下)
查看>>
Python GIL
查看>>
DataWorks数据开发模块大改版灰度发布
查看>>
云吞铺子国际版 Mr.Cloud S1E3《Release Instances & Downgrade Configurations》
查看>>
《Groovy极简教程》第8章 Groovy:领域特定语言(DSL)
查看>>
第197天:js---caller、callee、constructor和prototype用法
查看>>
打造人才“云”梯,阿里云联合各高校开展云计算进校园系列活动
查看>>
vm12 安装ubuntu15.10详细图文教程 虚拟机安装ubuntu安装 ubuntu更新软件 ubuntu一直卡在下载语言怎么办?...
查看>>
vi/vim的三种基本工作模式
查看>>
程维:滴滴希望未来出行选择和调用飞机一样方便
查看>>
windows中使用Git创建分支(branch)?
查看>>
Zabbix3.0学习笔记
查看>>
【最佳实践】OSS开源工具ossutil-增量上传
查看>>
Python | Python学习之深浅拷贝
查看>>
初识Avro
查看>>
中国在人工智能领域成为全球最‘吸金’的国家
查看>>
Kubeflow实战系列:阿里云上使用JupyterHub
查看>>
研究人员成功从地面入侵飞行中的飞机
查看>>