Posts for the month of November 2009

ClassInfo API has changed, check your extensions!

as part of the fixed class initialization in jpf-core, there is a ClassInfo API rename. From the commit message:

"..renamed ClassInfo.getClassInfo() into ClassInfo.getResolvedClassInfo(), and added a ClassInfo.tryGetResolvedClassInfo(). The first one can throw NoClassInfoExceptions, so users have to be prepared this can blow up because a superclass or an interface cannot be found. For clients that really don't care for anything but the requested ClassInfo itself, use tryGetResolvedClassInfo() and check the return value (null if it couldn't be loaded)."

Sorry for breaking extension builds, but it seemed much better to force everybody to think about this than to have a long string of runtime failures due to missing classpath entries, which are more likely now that interfaces are correctly resolved when loading a class. This previously lead to NPEs way downstream, and actually has to throw a NoClassDefFoundError within the SUT in most cases. A separate resolveClass() step (to keep the API stable) would not have been possible because we need superclasses to be loaded when computing field offsets.

jpf-mango First Example

The jpf-mango project has produced its first? totally automated, not-completely-trivial specification of sample java code. The project code base contains standard and exotic embeddings of the jpf engine.

Eclipse-jpf update site released, installing is now MUCH easier

With an update site for eclipse-jpf released, installation and updating become a breeze. Take a look at the how to here: Installing the Eclipse JPF plugin