Building Soot with IntelliJ IDEA

Andreas Dann edited this page Dec 4, 2017 · 9 revisions

Contributed by Konrad Jamrozik, GitHub account

Step 1
Download IntelliJ IDEA from Jetbrains

Step 2
Go to import project and select your '.project' file and click OK. To obtain the '.project' file, clone the Soot GitHub repository.

https://raw.github.com/mmustafa88/Sootscreenshots/master/shot1.png

Step 3 Next select the Soot directory

https://raw.github.com/mmustafa88/Sootscreenshots/master/shot2.png

Step 4 Import project from external model Eclipse

https://raw.github.com/mmustafa88/Sootscreenshots/master/shot3.png

Step 5
Check the box with ‘keep project and module file in’ and ‘project format as ‘.idea'.
Note: Because we are keeping the project files in '.idea' dir, all of them will be ignored with ".idea" line in .gitignore

Figure10

Step 6
Uncheck all projects except Soot. The unchecked projects are related to eclipse plug-in.
Note: Build path will be broken. Java SDK probably won't be recognized and some jars might be missing.

Step 7
Change the module's dependencies storage format to IntelliJ IDEA, so you won't have to modify the .classpath file. You can easily fix the SDK by resetting it, which is done in next step.

Step 8
Go to view and open module settings and Dependencies tab and select your Java version.

Fig 11

Step 9
Download the missing jars:

Put these files in ./libs_intellij so they are picked up by .gitignore. The final dependencies should resemble (java_cup.jar is not on the screenshot, but it should be):

Fig 12

Step 10
Create Run configuration by going to Run -> edit configuration

Fig 13

Congratulations! You have successfully imported & built Soot with IntelliJ IDEA.

Table of Contents

Also check out Soot's webpage NOTE: If you find any bugs in those tutorials (or other parts of Soot) please help us out by reporting them in our issue tracker.

Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.