Software Engineering Group

Soot Tutorial

Setup

Available Versions

Soot is available in two versions: the official release version and the trunk version:

Current official release version: 2.5.0 (release year: 2005)

Current trunk version: ? (last modification: few days ago)

Command line call

For version 2.5.0

java -cp *soot-jar*;*classes-to-analyze*;*libraries*; soot.Main *main-class*

If the following error occurs then you do not use the version 2.5.0, but the trunk version:

soot.SootResolver$SootClassNotFoundException: couldn't find class: ...

For trunk version

java -cp *soot-jar*; soot.Main -cp *classes-to-analyze*;*libraries*; -pp soot.Main *main-class*

If the following error occurs then you compiled the *classes-to-analyze* with a different java version than you use to execute the command above.

Unknown tag in constant pool: *a number* at entry *another number* Exception in thread "main" java.lang.RuntimeException: Could not load classfile: java.lang.CharSequence

 

Command line arguments

Overview: https://ssebuild.cased.de/nightly/soot/doc/soot_options.htm

Example Eclipse project

gitlab URL: https://build.se.informatik.uni-kiel.de/gitlab/chw/SootTutorial

Official, but incomplete setup description

https://github.com/Sable/soot/wiki/Running-Soot

Upcoming Events

  • Mar 12, 2022 09:00 AM to Mar 15, 2022 03:00 PM Honolulu - Hawaii (USA) ICSA 2022
  • Mar 15, 2022 09:00 AM to Mar 18, 2022 03:00 PM Honolulu, Hawaii (USA) SANER 2021
  • Apr 09, 2022 09:00 AM to Apr 13, 2022 03:00 PM Beijing, China ICPE 2022
  • May 20, 2022 09:00 AM to May 28, 2022 03:00 PM Pittsburgh, PA (USA) ICSE 2022
Research Projects

Teaching