[Soot-list] Missing DEX plugin

Karim Hamdan karimhamdan at gmail.com
Wed Jan 15 12:52:58 EST 2014


Hi,

I'm trying to do some analysis on an android apk from within an eclipse
project. So I added soot-infoflow-android as a project dependency in order
to make use of its android lifecycle model. In my application I call the
following methods in order to create the dummy entry points of the input
android apk.

SetupApplication app = new SetupApplication(androidDirectory,
apkFileLocation, "SourcesAndSinks.txt", "entrypoints-someLines.txt");
app.calculateSourcesSinksEntrypoints();
app.printEntrypoints();


However, I get the following exception complaining about a missing DEX
plugin. Is there a plugin dependency I'm missing in my project?

Caused by: java.lang.Error: Tried to load input from DEX but class
soot.DexClassProvider is not present on the classpath. Did you forget to
include the DEX plugin?
at soot.SourceLocator.dexClassProvider(SourceLocator.java:149)
 at soot.SourceLocator.setupClassProviders(SourceLocator.java:133)
at soot.SourceLocator.getClassSource(SourceLocator.java:67)
 at soot.SootResolver.bringToHierarchy(SootResolver.java:186)
at soot.SootResolver.bringToSignatures(SootResolver.java:239)
 at soot.SootResolver.bringToBodies(SootResolver.java:280)
at soot.SootResolver.processResolveWorklist(SootResolver.java:150)
 at soot.SootResolver.resolveClass(SootResolver.java:124)
at soot.Scene.tryLoadClass(Scene.java:578)
at soot.Scene.loadBasicClasses(Scene.java:1149)
 at soot.Scene.loadNecessaryClasses(Scene.java:1220)
at
soot.jimple.infoflow.android.SetupApplication.runSootBasedPhases(SetupApplication.java:159)
 at
soot.jimple.infoflow.android.SetupApplication.calculateSourcesSinksEntrypoints(SetupApplication.java:120)
at
ca.uwaterloo.averroes.callgraph.transformers.AndroidCallGraphTransformer.getProbeCallGraph(AndroidCallGraphTransformer.java:65)
 at
ca.uwaterloo.averroes.callgraph.CallGraphFactory.generateAndroidCallGraph(CallGraphFactory.java:50)
at
ca.uwaterloo.averroes.callgraph.drivers.AndroidCallGraphGenerator.main(AndroidCallGraphGenerator.java:25)
 ... 5 more
Caused by: java.lang.ClassCastException: soot.DexClassProvider cannot be
cast to soot.SourceLocator$IDexClassProvider
at soot.SourceLocator.dexClassProvider(SourceLocator.java:146)
 ... 20 more

-- 
Karim
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.cs.mcgill.ca/pipermail/soot-list/attachments/20140115/5d80502e/attachment.html 


More information about the Soot-list mailing list