The Google Singleton Detector, or GSD, is a tool which analyzes Java bytecode and detects the use of Singletons.
…
But wait, why would I want to remove my global state and/or singletons? In a nutshell, because they can make testing difficult and hide problems with your design. Again, it’s more complicated than that, so check out the FAQ for more info.