I'm using Java 1.6 and running a standalone Java app through Ant (1.8). I am getting an annoying AbstractMethodError, which I have concluded is because a version of a class, "javax.xml.parsers.DocumentBuilderFactory" is getting in my classpath that I don't want there. But everything I thought was in my classpath doesn't have a version of the class with the offending method signature, so any ideas how to find where this offending class lies? - Dave
The message is saying that the method named is not in the class that's being found; sounds like you were thinking the problem was that the method was there, but it's the opposite. What's happening is that an older version of this class is in some jar file on your classpath. There's actually a suitable version that's part of JDK 1.6, and that's the version that you want to be found. So it's a matter of removing something from your classpath, not adding something in.
This class was sometimes shipped as part of the separate JAXP download, so you may have an old version of it someplace. What's on your classpath now?