[Soot-list] Problematic behavior of Scene.v().addBasicClass (nightly build vs. soot 2.5)

Khanh Truong Duy Nguyen khanhtn1 at uci.edu
Wed Oct 9 04:30:02 EDT 2013


Hi,

When trying the most recent nightly build (Oct 9), I found that soot's
behavior is problematic

Here is the code I have:

class Analysis extends SceneTransformer {...
public static void main(String[] args) {
//
 PackManager.v().getPack("wjtp").add(new Transform("wjtp.Transform",
Analysis.v()));

Scene.v().addBasicClass("manager.MyManager",SootClass.SIGNATURES);

soot.Main.main(args);
}
}

Then I have

class CurrentMethod  {
 static SootClass manager = Scene.v(),getSootClass("manager.MyManager");
}

*** If I use soot-2.5.jar, there is no problem at all, the
CurrentMethod.manager is the MyManager class

*** If I use the latest nightly build, there is a RuntimeException thrown:
Caused by: java.lang.RuntimeException:
Aborting: can't find classfile manager.MyManager
at soot.Scene.getSootClass(Scene.java:670)
The stack trace is :
at soot.SceneTransformer.transform(SceneTransformer.java:39)
at soot.Transform.apply(Transform.java:89)
at soot.ScenePack.internalApply(ScenePack.java:43)
at soot.Pack.apply(Pack.java:114)
at soot.PackManager.runWholeProgramPacks(PackManager.java:540)
at soot.PackManager.runPacksNormally(PackManager.java:443)
at soot.PackManager.runPacks(PackManager.java:388)
at soot.Main.run(Main.java:198)
at soot.Main.main(Main.java:141)
at driver.Analysis.main(Analysis.java:54)

Here is the options argument:-w -pp -keep-line-number -f J -p jb
use-original-names:false  -process-dir {path}  -cp {path}

Thank you,

Khanh Nguyen
UC Irvine
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.cs.mcgill.ca/pipermail/soot-list/attachments/20131009/d34b39b7/attachment-0001.html 


More information about the Soot-list mailing list