Inspired by, and arguably a partner of the Singleton DetectorHairball uses bytecode analysis to identify the use of constructor injection, setter injection and singleton use to graph dependencies in code bases.

Hairball is not undergoing active development. If it is of use to you, and you are interested in taking the project over, then let me know.