[Soot-list] Exception: class * read in from a classfile in which * was expected

tina heyetina at 163.com
Sat Jul 7 23:55:33 EDT 2012


Hi,

         I wrote a soot program to do control flow analysis of an android
program, I already add the external jar file to classpath. When I run it ,it
show the exception info:


Exception in thread "main" java.lang.RuntimeException: Error: class
com.dodowaterfall.BitmapCache$BtimapRef read in from a classfile in which
BitmapCache$BtimapRef was expected.

         What does this info mean?

 

         The command line includes:


                   int size = 10;

                   String[] args = new String[size];

                   args[0] = "-cp";

                   args[1] = "~
DodoWaterFall\\bin\\classes\\com\\dodowaterfall;~\android-sdks\\platforms\\a
ndroid-15\\android.jar;~\Java\\jdk1.6.0_33\\jre\\lib\\rt.jar;" 

 
"~\Java\\jdk1.6.0_33\\jre\\lib\\jce.jar";// target class path

                   args[2] = "-process-path";

                   args[3] =
"C:\\Users\\tina\\Desktop\\DodoWaterFall\\DodoWaterFall\\bin\\classes\\com\\
dodowaterfall";

                   args[4] = "-main-class";

                   args[5] = "MainActivity";// target class

                   args[6] = "-src-prec";

                   args[7] = "java";

                   args[8] = "-app";

                   args[9] = "-interactive-mode";

                   soot.Main.main(args);

 

The target class:


public class MainActivity extends Activity {

         private LazyScrollView waterfall_scroll;

         private LinearLayout waterfall_container;

         private ArrayList<LinearLayout> waterfall_items;

         private Display display;

         private AssetManager assetManager;

         private List<String> image_filenames;

         private final String image_path = "images";

         private int itemWidth;

         private int column_count = 3; 

         private int page_count = 15;

         private int current_page = 0;

 

         @Override

         public void onCreate(Bundle savedInstanceState) {

                   super.onCreate(savedInstanceState);

                   setContentView(R.layout.main);

                   display = this.getWindowManager().getDefaultDisplay();

                   itemWidth = display.getWidth( ) / column_count;
assetManager = this.getAssets();

                   InitLayout();

         }

The android program include these classes:



 

regards

 

Tina

 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.cs.mcgill.ca/pipermail/soot-list/attachments/20120708/c62ce229/attachment-0001.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/jpeg
Size: 24104 bytes
Desc: not available
Url : http://mailman.cs.mcgill.ca/pipermail/soot-list/attachments/20120708/c62ce229/attachment-0001.jpe 


More information about the Soot-list mailing list