[Soot-list] addBasicClasses() quit on Exception

Kin Keung Ma archicat at gmail.com
Mon Mar 14 02:55:50 EST 2005


I tried to do this with Soot:

Options.v().parse(new String[]{"-full-resolver"});
// for every class c in rt.jar do
    Scene.v().addBasicClass(c,SootClass.BODIES);
Scene.v().loadBasicClasses();

I think some classes in rt.jar calls methods in javax.crypto library
that does not exist in rt.jar. Then the SootResolver threw an
exception:

Exception in thread "main" java.lang.RuntimeException: couldn't find
class: javax.crypto.spec.IvParameterSpec (is your soot-class-path set
properly?)
        at soot.SootResolver.bringToHierarchy(SootResolver.java:139)
        at soot.SootResolver.bringToSignatures(SootResolver.java:172)
        at soot.SootResolver.bringToBodies(SootResolver.java:214)
        at soot.SootResolver.processResolveWorklist(SootResolver.java:100)
        at soot.SootResolver.resolveClass(SootResolver.java:89)
        at soot.Scene.tryLoadClass(Scene.java:298)
        at soot.Scene.loadBasicClasses(Scene.java:838)
        at Main.main(Main.java:66)

Can Soot handle the missing of classes internally, so that it can
continue even some classes are missing?
Moreover, is my way of loading classes into Soot correct? Thanks.

Kin


More information about the Soot-list mailing list