Sponsored Link •
Managing dependencies is important. JarAnalyzer, an open source static analysis tool for .jar files, can help. Think of it as JDepend for jars.
A while back, I mentioned JarAnalyzer, a utility I created that identifies dependencies among .jar files. Recently, I've put some work into JarAnalyzer, and want to announce a fairly significant upgrade. Here is some of what you can now do with the new JarAnalyzer:
2. Generate an .xml document (see Hibernate sample) detailing some important .jar design metrics, such as Afferent and Efferent coupling, Abstractness, Instability, and Distance. Included with JarAnalyzer is a stylesheet that generates prettier output.
3. Include JarAnalyzer as part of your Ant build script, so you get the component diagram and detailed xml information each time you build.
4. Run JarAnalyzer standalone, against any directory containing .jar files, to generate the xml or GraphViz output.
5. Filter out packages and .jar files you want excluded from the output, allowing you to focus on only those aspects of the application that most interest you.
If you decide to experiment with JarAnalyzer, and possibly use it on a more regular basis, I'd enjoy hearing from you. Please feel free to suggest any upgrades or revisions you'd like to see built into the utility. Here's my contact information. Also, I've begun posting most of my articles to my personal blog, and that's where I'll continue to provide updates on JarAnalyzer and other topics related to Dependency Management, Agility, and most things technical.
|Kirk Knoernschild is a hands-on software consultant with over ten years of industry experience, and is passionate about using leading best practices to build better software. Kirk is the author Java Design: Objects, UML, and Process, published in 2002 by Addison-Wesley. He frequently contributes to various technical publications, and actively updates his personal website, www.kirkk.com, with new articles and whitepapers on a variety of software development topics. He is also the founder of www.extensiblejava.com, a growing resource of design pattern heuristics in Java.|