Question: Is it possible to detect unused methods in a source tree using FindBugs? I see some posts on SO where users are claiming to do that, some others asking how to do this in FB and others where they claim FB cannot do this. 

Does anyone know for sure how this is done? I am only interested in methods that are not explicitly called from elsewhere, I don't care about reflection.

Answer: 
Well, since you want to go down this route despite warnings from the others who've responded :), you can copy and modify the [UPM detector](http://findbugswithadaptiveranking.googlecode.com/svn/trunk/src/java/edu/umd/cs/findbugs/detect/FindUncalledPrivateMethods.java) to do what you need.

Its really simple to write a detector for FindBugs (especially when you've got a great starting point). Read [this](http://www.ibm.com/developerworks/library/j-findbug2/) to get you started
Maybe crap4j is what you need. It removes all code that is not reached by unit tests. This is of course the hard way to minimize your app.