工具:从一个文件夹中复制jar到另一个文件夹中
2018-06-18 03:48:16来源:未知 阅读 ()
工具类:从一个文件夹中复制jar到另一个文件夹中
需要的小伙伴可以试一试,很爽哦,有时候真的很需要!
需求:当我们拿到一个maven项目时,而maven项目的jar包都是通过pom.xml文件管理的,此时我们需要maven中的jar(很多,目录很复杂,很难手动复制)
有两种方式:
传统方式1.找到本地maven存放的位置,挨个进去复制jar包;(尝试了一下,复制一半花费了1个小时)
便捷方式2. 使用java写个工具帮我们做这件事, 方便快捷 (20s搞定)
有了需求,就有了我这里的工具类,下面介绍一下:
使用方式很简单,在我的main方法中你只需要给两个参数:一个源文件夹的路径,一个目的文件夹的路径。运行即可完成所有jar复制。
采用的技术:java的传统I/O操作
注意事项:
1.目的文件夹路径必须先创建,在使用
源代码:
package cc.makalu.file; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; /** * * @ClassName:downJarFromFile * @Package:cc.makalu.file * @Description:从文件中复制jar包 * @author:ljl * @version:v0.1 * @data:2018年1月16日 下午2:25:38 备注: */ public class downJarFromFile { public static void readFile(String resourcePath, String targetFile,String fileName) throws FileNotFoundException { //C:\Users\Administrator\.m2\repository\antlr\antlr\2.7.7\antlr-2.7.7.jar String targetPath = targetFile+"\\"+fileName; targetPath = targetPath.replaceAll("\\\\", "/"); //System.out.println(targetPath); //F:\jar文件\antlr-2.7.7.jar resourcePath = resourcePath.replaceAll("\\\\", "/"); //System.out.println(resourcePath); FileInputStream in = new FileInputStream(resourcePath); FileOutputStream out = new FileOutputStream(targetPath); byte[] buffer = new byte[2097152]; try { while ((in.read(buffer)) != -1) { out.write(buffer); } } catch (IOException e) { e.printStackTrace(); } } public static boolean copyJarFromFile(String resourceFile, String targetFile) throws FileNotFoundException { boolean flag = false; File file = new File(resourceFile); if (!file.isDirectory()) { String fileName = file.getName(); String absolutepath = file.getAbsolutePath(); System.out.println("文件"); System.out.println("path=" + file.getPath()); System.out.println("absolutepath=" + absolutepath); System.out.println("name=" + fileName); // 获得文件后缀名 if (fileName.indexOf(".") != -1) { String xt = fileName.substring(fileName.indexOf("."), fileName.length()); if (xt.contains(".jar") && xt.endsWith(".jar")) { readFile(absolutepath, targetFile,fileName); } } } else if (file.isDirectory()) { System.out.println("文件夹"); String[] filelist = file.list(); for (int i = 0; i < filelist.length; i++) { File readfile = new File(resourceFile + "\\" + filelist[i]); if (!readfile.isDirectory()) { String fileName = readfile.getName(); String absolutepath = readfile.getAbsolutePath(); System.out.println("path=" + readfile.getPath()); System.out.println("absolutepath=" + readfile.getAbsolutePath()); System.out.println("name=" + readfile.getName()); // 获得文件后缀名 if (fileName.lastIndexOf(".") != -1) { String xt = fileName.substring(fileName.indexOf("."), fileName.length()); if (xt.contains(".jar") && xt.endsWith(".jar")) { readFile(absolutepath, targetFile, fileName); } } } else if (readfile.isDirectory()) { copyJarFromFile(resourceFile + "\\" + filelist[i], targetFile); } } } return flag; } public static void main(String[] args) { try { copyJarFromFile("C:\\Users\\Administrator\\.m2\\repository", "F:\\jar文件"); } catch (FileNotFoundException e) { e.printStackTrace(); } } }
看看运行截图:
最终将C:\\Users\\Administrator\\.m2\\repository目录中的所有的jar全部复制到了F:\\jar文件 目录中。
当比人苦恼一个小时才能完成的事情,你几十秒就搞定了!!!这种感觉很爽哦
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 代码对比工具,我就用这 6 个! 2020-06-10
- 作为一个面试官,我想问问你Redis分布式锁怎么搞? 2020-06-10
- 2020最新IDEA插件大集合,一款能帮助你写代码的工具是多么重 2020-06-09
- 「starter推荐」简单高效Excel 导出工具 2020-06-08
- 我可真是醉了,一个SpringBoot居然问了我30个问题 2020-06-08
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash