java代码解析工具 java源码解析

如何分析android的OOM,与java静态代码分析工具1.用MAT分析OOM
很多OOM看似发生在bitmap 分配得时候 , 但它一般不是rootcause 。根本原因都在于本应该自动释放的资源 , 因为代码的错误 , 而导致某些对象一直被引用(Reference) 。
2.java静态代码分析工具
写代码过程中难免会有疏漏,我们也可以借助工具分析,这里是常用的java静态代码分析工具:
个人觉得Find Bugs 和 PMD就可以了 , 只是辅助,不必过分依赖,他并不是万能的,不是所有错误都能找出来 。
你常用的Java工具库都有哪些Java SDK 肯定是使用最广的库,所以本文的名单焦点是流行的第三方库 。该列表可能并不完善,所以如果java代码解析工具你觉得有什么应该出现在列表中的,请留下您的评论 。非常感谢java代码解析工具!
1、核心库
Apache Commons Lang:来自Apache的核心库 , 为java.lang API补充了许多常用的工具类,如字符串操作、对象的创建等 。
Google Guava:来自谷歌的核心库,包括集合(Collection)、缓存(Caching)、支持原语(Primitives)等 。(示例)
2、HTML、XML Parser
Jsoup:一个简化了的 HTML操作的库 。(示例)
STaX:一组可以高效处理 XML的API 。(示例)
3、Web框架
Spring:Java平台上众所周知的开源框架和依赖注入容器 。(示例)
Struts2:来自Apache的流行Web框架 。(示例)
Google Web Toolkit:Google提供的开发工具库 , 主要用于构建和优化复杂的Web程序用 。(示例)
Strips:使用最新Java技术构建的Web程序框架 , 推荐使用 。
Tapestry:面向组件的框架,用于使用Java创建动态、健壮、扩展性高的Web应用程序 。
请猛击这里 查看以上面框架之间的比较 。
4、图表、报表、图像
JFreeChart:用于创建如条形图、折线图、饼图等图表 。
JFreeReport:创建于输出PDF格式的报表 。
JGraphT:创建图像,其中只包含由线段连接的点集 。
5、窗口
Swing:SDK提供的GUI库 。(示例)
SWT:eclipse提供的GUI库 。
SWT与Swing的比较 。
6.、GUI框架
Eclipse RCP 。(示例)
7、自然语言处理
OpenNLP:来自Apache的自然语言处理库 。(示例)
Stanford Parser:斯坦福大学提供的自然语言处理库 。(示例)
如果你是一名NLP专家,请猛击这里 查看更多工具库介绍 。
8、静态分析
Eclipse JDT:由IBM提供的静态分析库 , 可以操作Java源代码 。(示例)
WALA:可以处理jar包文件(即字节码)的工具库 。(示例)
9、JSON
Jackson: 用于处理JSON数据格式的多用途的Java库 。Jackson 旨在快速、准确、轻量、对开人员友好之间找到最好的平衡点 。
XStream:一个简单用于对象和XML互相转换的库 。
Google Gson:一个专门用于Java对象和Json对象相互转换的工具库 。(示例)
JSON-lib:用于 beans、maps、collections、java arrays、XML 和 JSON 之间相互转换操作的工具库 。
10、数学
Apache Commons Math:提供数学计算和数值统计需函数的工具库 。
11、日志
Apache Log4j:风行一时的日志记录操作库 。(示例)
Logback:当前流行的log4j项目的继任者 。
SLF4J(The Simple Logging Facade for Java): 各种日志框架的一个简单的外观或抽象(如java.util.logging 、logback、log4j等),允许用户在部署时加入需要的日志框架 。
12、Office
Apache POI:利用其提供的APIs,可以使用纯Java代码操作各种基于微软OLE2合成文档格式的文档 。

推荐阅读