[Soot-list] Could not load classfile: java.util.Arrays

Earlence Fernandes earlenceferns at gmail.com
Sun Jul 26 18:49:35 EDT 2015


I neglected to mention that I'm on Java 1.8.
When I changed the project to use Jave 1.7, I get this error:
Exception in thread "main" java.lang.RuntimeException: Could not load
classfile: java.util.Map$Entry
at soot.coffi.Util.resolveFromClassFile(Util.java:75)
at soot.CoffiClassSource.resolve(CoffiClassSource.java:39)
at soot.SootResolver.bringToHierarchy(SootResolver.java:215)
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.forceResolve(Scene.java:1279)
at
com.microsoft.smartthings.overprivilege.OverprivilegeAnalyser.main(OverprivilegeAnalyser.java:44)

-Earlence

On Sun, Jul 26, 2015 at 3:27 PM, Earlence Fernandes <earlenceferns at gmail.com
> wrote:

> I have set the soot classpath to contain rt.jar, but I still get that
> message. I'm trying to use soot to analyse compiled groovy programs.
>
> My setup looks like:
>
>         public static void main(String [] args)
> {
> System.out.println("Overprivilege Analyser");
> Transform oat = new Transform("wjtp.OASceneTransformer", new
> OASceneTransformer());
> PackManager.v().getPack("wjtp").add(oat);
>  //https://github.com/Sable/soot/wiki/Using-Soot-with-custom-entry-points
> String classpath = "C:\\Program Files\\Java\\jre1.8.0_51\\lib\\rt.jar;"
> + "C:\\Users\\t-earlef\\workspace\\SmartThingsCompilationShell\\bin\\;"
> + "C:\\apps\\groovy-2.4.4\\lib\\groovy-2.4.4.jar";
>  String [] args2 = {
> "-soot-class-path", classpath,
> "-w",
> "-src-prec", "class",
> "-process-dir", "D:\\SamsungSmartApps\\sootclasstest\\",
> "-d", "D:\\SamsungSmartApps\\sootout",
> "-dump-cfg", "ALL"
> };
>  Options.v().parse(args2);
>  System.out.println("Soot class path " + Scene.v().getSootClassPath());
>  SootClass c = Scene.v().forceResolve("REDACTED", SootClass.BODIES);
> c.setApplicationClass();
> Scene.v().loadNecessaryClasses();
> List<SootMethod> entryPoints = new ArrayList<SootMethod>();
> //entryPoints.add(c.getMethodByName("skeleton1"));
> entryPoints.add(c.getMethodByName("installed"));
> Scene.v().setEntryPoints(entryPoints);
> PackManager.v().runPacks();
> }
>
>
> -Earlence
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20150726/20613ae1/attachment.html 


More information about the Soot-list mailing list