Logo Maven: The Definitive Blog
All About Writing Maven: The Definitive Guide
 

JavaOne: Bytecode Analysis/Transformation BOF

Tuesday, 7:30 PM, Moscone, Hall E 133

Not to be missed, Eugene Kuleshov and Misko Hevery are going to be giving a quick hour-long presentation on byte-code manipulation. Byte-code manipulation is the foundation for today's innovation. Everything from JRuby, to Groovy, and AspectJ use ASM. If you have ever been interested in learning the how and why of bytecode manipulation, you should attend this BoF on Tuesday night.

From Eugene's Blog:

Misko Hevery and I will be presenting "Practical Applications of Static Bytecode Analysis and Transformation for the Java platform" BOF session on Tuesday, May 06 at 19:30 - 20:20. We are going to show several open source tools that are using ASM framework for bytecode analysis and manipulation.

BOF-5839 - Practical Applications of Static Java™ Technology-Based Bytecode Analysis and Transformation, Full Description:

The Java™ Virtual Machine provides a proven platform for running reliable and high-performance applications. Its class-loading architecture and open class format specification enable the implementation of dynamic languages in addition to static analysis and transformation tools not possible on other platforms. They include code obfuscation and optimization, test coverage tools, calculation of quality metrics, bug finders, and many others.

This session shows that bytecode analysis and manipulation are not that difficult and are very cool. It gives attendees a better understanding of how these tools do their job and how these ideas can be used in other applications. Using a popular open-source bytecode manipulation and analysis framework, it shows several practical applications of static bytecode analysis and transformation in real products:

  • Adding code to record test coverage
  • Dependencies, structural analysis, complexity metrics, and architectural manipulations
  • Renaming classes and packages for special packaging needs
  • Verifying binary compatibility between releases



Brilliant post..

thats for sure, dude