通過loosejar清理應用中冗余的jar包
隨著應用規模的逐漸增大,依賴的jar包數量也大幅增加,其中不乏多余的,用不到的jar包,占用了大量的寶貴空間。通過loosejar這個工具,便可輕松找到“濫竽充數”的jar包了~
loosejar的工作原理是利用classloader。因為應用在運行的時候,用到哪個類,classloader就會把這個類的.class文件加載到jvm中,然后生成一個class對象,然后再利用反射就可以執行這個類的方法了,因此有哪些.class文件被加載了,classloader是一清二楚,利用這個特性,便可知道jar包中類的實際使用情況,以及應用中jar包的實際使用情況了。
第一步:將loosejar.jar放到應用的WEB-INF下的lib中,比如說路徑是
D:/workspaces/appnotify/WebRoot/WEB-INF/lib/loosejar.jar
第二步:在IDE中的installedJRES里面的JDK處配置-Dfile.encoding=uft8
-javaagent:D:/workspaces/appnotify/WebRoot/WEB-INF/lib/loosejar.jar
第三步:啟動應用,盡可能做到路徑全覆蓋來測試你的應用,盡可能讓每段代碼都執
行。
第四步:在JDK安裝路徑下,bin文件夾中的jconsole,選擇bootstrap的那個端口,然
后選擇MBean下的com.googlecode.loosejar 點擊summary,即可查看到分析結果了~
來自:http://blog.csdn.net/exceptional_derek/article/details/38472465
</span>
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!