[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: old to new soot questions
Ondrej,
Now that I compiled my tool with the new Soot, I have problems running it
:-)
Here is what I did before:
- load classes using
(Scene.v()).loadClassAndSupport(arg);
SootClass internalClass = (Scene.v()).getSootClass(arg);
internalClass.setApplicationClass();
- create the Hierarchy for Scene
Hierarchy hierarchy = new Hierarchy()
- then explore methods of loaded classes
for each internal method for each class
Body jb = internalMethod.retrieveActiveBody();
This worked beautifully before, however, now I get errors like
Exception in thread "main" java.lang.RuntimeException: Class Buffer
doesn't have method <init>([]) : void; failed to resolve in superclasses
and interfaces
at soot.SootClass.getMethod(SootClass.java:427)
at soot.coffi.CFG.generateJimple(CFG.java:4498)
at soot.coffi.CFG.jimplify(CFG.java:1436)
at soot.coffi.CFG.jimplify(CFG.java:1099)
at soot.coffi.CoffiMethodSource.getBody(CoffiMethodSource.java:98)
at soot.SootMethod.getBodyFromMethodSource(SootMethod.java:79)
at soot.SootMethod.retrieveActiveBody(SootMethod.java:274)
I am guessing the Hierarchy is not built appropriately. Could you please
tell me the correct sequence of commands to achieve what I had before.
Thank you,
Oksana.