[Soot-list] AxmlVisitor class not found

Stefan Gommer gommeriphone at googlemail.com
Tue Apr 29 21:06:01 EDT 2014


Hello,

i’m quite new to soot and (unfortunately) java. I’ve tried to analyze an android app that does nothing with flowdroid.
I downloaded the files from the nightly build and startet the file with the following command line:

java -cp soot.jar:soot-infoflow.jar:soot-infoflow-android.jar:slf4j-api-1.7.5.jar:slf4j-simple-1.7.5.jar:axml-2.0.jar soot.jimple.infoflow.android.TestApps.Test "Apps/nothing.apk" ../android\ sdk/sdk/platforms/ 

I’m getting this output:

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/Users/neji/Documents/Uni%20Stuff/Master%20Thesis/FlowDroid/soot.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/Users/neji/Documents/Uni%20Stuff/Master%20Thesis/FlowDroid/slf4j-simple-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.SimpleLoggerFactory]
[main] INFO soot.jimple.infoflow.taintWrappers.EasyTaintWrapper - Loaded wrapper entries for 52 classes and 4 exclusions.
[main] INFO soot.jimple.infoflow.android.SetupApplication - ARSC file parsing took 0.018594 seconds
warning: Android API version '15' not available, using minApkVersion '1' instead
warning: Android API version '15' not available, using minApkVersion '1' instead
Using '../android sdk/sdk/platforms//android-3/android.jar' as android.jar
Warning: java.lang.ref.Finalizer is a phantom class!
[main] INFO soot.jimple.infoflow.entryPointCreators.AndroidEntryPointCreator - Generated main method:
    public static void dummyMainMethod()
    {
        int $i0;
        my.app.does.nothing.Nothing $r0;
        android.os.Bundle $r1;

        $i0 = 0;

     label0:
        if $i0 == 0 goto label4;

        $r0 = new my.app.does.nothing.Nothing;
        specialinvoke $r0.<my.app.does.nothing.Nothing: void <init>()>();
        if $i0 == 1 goto label4;

     label1:
        $r1 = new android.os.Bundle;
        specialinvoke $r1.<android.os.Bundle: void <init>()>();
        virtualinvoke $r0.<my.app.does.nothing.Nothing: void onCreate(android.os.Bundle)>($r1);
        $r1 = null;

     label2:
        if $i0 == 3 goto label1;

        if $i0 == 4 goto label3;

        if $i0 == 5 goto label1;

        if $i0 == 6 goto label2;

     label3:
        if $i0 == 7 goto label4;

     label4:
        if $i0 == 8 goto label0;

        return;
    }

[Call Graph] For information on where the call graph may be incomplete, use the verbose option to the cg phase.
[Spark] Pointer Assignment Graph in 0.2 seconds.
[Spark] Type masks in 0.0 seconds.
[Spark] Pointer Graph simplified in 0.0 seconds.
[Spark] Propagation in 0.1 seconds.
[Spark] Solution found in 0.1 seconds.
Callback analysis done.
Exception in thread "main" java.lang.NoClassDefFoundError: pxb/android/axml/AxmlVisitor$NodeVisitor
	at soot.jimple.infoflow.android.resources.LayoutFileParser$1$1.handleResourceFile(Unknown Source)
	at soot.jimple.infoflow.android.resources.AbstractResourceParser.handleAndroidResourceFiles(Unknown Source)
	at soot.jimple.infoflow.android.resources.LayoutFileParser$1.internalTransform(Unknown Source)
	at soot.SceneTransformer.transform(SceneTransformer.java:39)
	at soot.Transform.apply(Transform.java:90)
	at soot.ScenePack.internalApply(ScenePack.java:43)
	at soot.Pack.apply(Pack.java:116)
	at soot.jimple.infoflow.android.SetupApplication.calculateCallbackMethods(Unknown Source)
	at soot.jimple.infoflow.android.SetupApplication.calculateSourcesSinksEntrypoints(Unknown Source)
	at soot.jimple.infoflow.android.SetupApplication.calculateSourcesSinksEntrypoints(Unknown Source)
	at soot.jimple.infoflow.android.TestApps.Test.runAnalysis(Unknown Source)
	at soot.jimple.infoflow.android.TestApps.Test.main(Unknown Source)
Caused by: java.lang.ClassNotFoundException: pxb.android.axml.AxmlVisitor$NodeVisitor
	at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
	... 12 more


It seems that the AxmlVisitor class cannot be found. Is this a bug or is it an error caused by me? Do I have to put this file somewhere?

Any help appreciated

Regards,
Stefan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.CS.McGill.CA/pipermail/soot-list/attachments/20140430/da1ba874/attachment-0001.html 


More information about the Soot-list mailing list