paip.批处理清理java项目冗余jar的方法





在myeclipse中开发的java项目遇到jar包冗余情况,如何删除项目中的冗余jar包啊?项目很大jar包一百多个。

2010-09-14 14:23 shuilang52 | 分类:JAVA相关 | 浏览3074次



我的意思是项目已经基本完成了,现在我要做的是把别人开发好的项目中多余的jar除去,有206个jar,其中有很多没用到的,我想问一下如何尽快的除去冗余jar 谢谢



/////////////////////struct

收集import class >>deduli.

jars >>> jarKV(cls,jar),ddao include xxxxd jars...



zai 做个排除编程.... ok...



作者Attilax  艾龙,  EMAIL:1466519819@qq.com

来源:attilax的专栏

地址:http://blog.csdn.net/attilax



//////////////////src\com\attilax\jar\jarX.java

public static void main(String[] args) {

 

        iniJarKV("D:\\workspace\\lib");

        String dir = "D:\\workspace\\convert2atian4telbook\\src";

        List<String> files = travDir.getAllFileList(dir, "java");

        for (String file : files) {

            List<String> classes = IncludedClasses(file);

            for (String cls : classes) {

                String jar = getJar(cls);

                if (jar != null)

                    if (!MustJar.contains(jar))

                        MustJar.add(jar);

            }

        }



        // AllJar=travDir.getAllFileList(strPath, extName)

        AllJar.removeAll(MustJar);

        List<String> CanDelJars = AllJar;

        for (String f : CanDelJars) {

            File oldFile = new File(f);

            // 将文件移到新文件里

            File fnew = new File("c:\\CanDelJars\\" + oldFile.getName());

            oldFile.renameTo(fnew);

        }



        String s2 = listUtil.toString_jsonFmt(CanDelJars);

        System.out.println(s2);



    }



    static List AllJar = new ArrayList();

    static Set MustJar = new HashSet();

    static Map javKV = new HashMap();



[

  "D:\\workspace\\convert2atian4telbook\\lib\\Java_SDK_1.2.1.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\commons-fileupload-1.2.2.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\asm-3.3.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\proxool-cglib.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\httpcore-4.1.4.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\hibernate-jpa-2.0-api-1.0.1.Final.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\aspectjrt-1.7.0.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\ognl-3.0.6.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\httpclient-4.1.3.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\commons-dbcp-1.2.1.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\commons-httpclient-3.1.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\commons-logging-1.1.1.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\hibernate-c3p0-4.1.8.Final.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\jboss-logging-3.1.0.GA.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\gson-2.2.4.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\dom4j-1.6.1.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\xstream-1.3.1.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\antlr-2.7.7.jar",

  "D:\\workspace\\convert2atian4telbook\\lib\\weibo4j-oauth2.jar",





参考

显示出Jar文件中的所有目录名和文件名,也显示Manifest.mf文件所有属性 - 简单就是美! - ITeye技术网站.htm

paip.批处理清理java项目冗余jar的方法的更多相关文章

  1. java项目打jar包的两种情况

    链接地址:http://jingyan.baidu.com/article/6b97984d8a6ddc1ca2b0bfa0.html 本文介绍一下java项目打jar包时的两种情况各怎么操作   方 ...

  2. java 项目得到jar和classes路径

    java 项目得到jar和classes路径 public static String getJarPath(Class clazz) { String path = clazz.getProtect ...

  3. windows下面的java项目打成jar放到XShell终端上面进行远程调试

    前言: java项目打成jar放到linux上面运行,但是linux上面没有eclipse不能进行debug,所以要在windows的eclipse中进行远程调试. 需要注意的是!!!-->在e ...

  4. Eclipse将Java项目打成jar工具包

    jar包:就是别人已经写好的一些类,然后将这些类进行打包,你可以将这些jar包引入你的项目中,然后就可以直接使用这些jar包中的类和属性以及方法. jar包可分为可执行jar包和jar工具包,在这里, ...

  5. java项目打成jar包时引用了第三方jar,此时我们该如何解决呢

    Web项目做多了,反而对单纯的java项目陌生了,今天我们在开发项目的过程中,碰到一个这样的需求:需要将java项目放到linux系统上跑起来,当然这个javaSE项目是带main方法的.我们知道在I ...

  6. java项目打jar包

    首先 在工程中,右键项目,有个export,选择JAR File,就能导出jar包. 一.java项目没有导入第三方jar包 1. 首先在Eclipse中打开项目, 右键点击项目,选择“Export” ...

  7. (转)IntelliJ IDEA java项目导入jar包,打jar包

    以下为转载原文:https://www.cnblogs.com/yulia/p/6824058.html 一.导入 1.java项目在没有导入该jar包之前,如图: 2.点击 File ->   ...

  8. windows下的java项目打jar分别编写在windows与linux下运行的脚本( 本人亲测可用!)

    前言: 最近公司做了一个工具,要将这个工具打包成一个可运行的程序,编写start.bat和start.sh在windows和linux下都可以运行. 在网上找了很多资料,最后终于找到一个可靠的资料,记 ...

  9. IntelliJ IDEA java项目导入jar包,打jar包

    一.导入 1.java项目在没有导入该jar包之前,如图: 2.点击 File ->  Project Structure(快捷键 Ctrl + Alt + Shift + s),点击Proje ...

随机推荐

  1. iOS button 里边的 字体的 摆放

    button.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft; button.titleEdgeInsets ...

  2. JVM调优-Java中的对象

    Java对象的大小 基本数据的类型的大小是固定的,这里不做详细说明.对于非基本类型的Java对象,其大小就值得商榷. 在Java中,一个空Object对象的大小是8byte,这个大小只是保存堆中一个没 ...

  3. JSP中setattribute与setParameter的区别

    HttpServletRequest类既有getAttribute()方法,也由getParameter()方法,这两个方法有以下区别: (1)HttpServletRequest类有setAttri ...

  4. Windows服务的手动添加和删除方法

    Windows服务的手动添加和删除方法 服务,是指执行指定系统功能的程序.例程或进程,以便支持其他程序,尤其是低层(接近硬件)程序.其实,服务就是一种特殊的应用程序,它从服务启动开始就一直处于运行状态 ...

  5. javascript学习第一课

    1.基本知识: 1.1 词法结构 1.1.1 字符集 javascript程序是用Unicode字符集编写的. 1.1.2 区分大小写 javascript是区分大小写的语言.也即是关键字.变量.函数 ...

  6. vb.net加密解密方法

    1.vb.net加密解密方法 Private Function getLicenseDate() As String Dim b() As Byte Dim path As String = Serv ...

  7. Mysql --分区表(5)Columns分区

    COLUMNS分区 COLUMNS分区是RANGE和LIST分区的变种.COLUMNS分区支持多列作为分区键进行分区 RANGE COLUNMS分区和LIST COLUMNS都支持非INT型列作为分区 ...

  8. 【Visual Lisp】变体与安全数组

    (vlax-make-variant) ;;创建一个未初始化的变体 ;;01.整型值变体(setq myvar (vlax-make-variant 10)) ;;创建整型值变体,返回 #<va ...

  9. 慧都独家披露DevExpress v13.2测试版重大变化

    昨日,DevExpress隆重宣布发布v13.2.3测试版,想抢先尝鲜的朋友可以在这里下载哦.希望使用DevExpress旧版本的朋友,看到这些更新后能尽快更新你的代码,以免造成不必要的麻烦. Das ...

  10. 待实验:Android 增量升级

    参考资料: 增量升级(省流量更新)的Android客户端实现  http://blog.csdn.net/sgwhp/article/details/9009427 http://my.oschina ...