当前位置: 首页 > 工具软件 > Soot > 使用案例 >

Soot的安装及其初步使用

缑修齐
2023-12-01

一.Soot的安装方法

    在线自动安装:安装完eclipse之后,打开eclipse,并且安装soot插件。进eclipse,点help,点install new software 点击add在location框里输http://sable.github.io/soot/eclipse/点ok 。

 

二.Eclipse之前安装过,在此基础上安装soot,安装soot插件遇到的问题

    1.eclipse找不到 help->software update->find and install

其解决方法是:

      (1)打开Eclipse菜单栏中的Window下的preferences;

      (2)依次选择General -> Capabilities,在右侧窗口勾选Classic Update;

   或者使用:Install new software -> Install -> 选择文件 -> 命名 -> 选择复选框 -> next -> accept -> finish.

 

   2.在安装soot后,右击一个test的Java文件后,列表里没有soot,上网查阅资料后,发现了其原因,我安装的eclipse的版本是luna,然而soot无法安装在luna版本下,建议使用kepler版本,所以卸载了luna版本,重新安装。重新安装后又按照soot的在线安装方法。

 

三.安装soot插件后,使用soot分析程序过程中遇到的问题:

1. 第一个问题:

   运行程序出现问题-->java.lang.RuntimeException:Could not loadclassfile

   查阅资料后发现出现此问题的原因是jdk1.8不稳定,其解决方法是将jdk的版本改为1.7。

   需要再安装一个jdk1.7.安装两个不同版本的jdk后,环境变量的设置问题:

   安装完jdk1.7,并修改环境变量JAVA_HOME为D:\devSoftware\jdk1.7.执行java -version时,显示:

 

新的环境变量JAVA_HOME=D:\devSoftware\jdk1.7并没有生效。 在网上找了很多资料才发现:在安装JDK1.8时,自动将java.exe、javaw.exe、javaws.exe三个可执行文件复制到了C:\Windows\System32目录,由于这个目录在WINDOWS环境变量中的优先级高于JAVA_HOME设置的环境变量优先级.解决方案:将java.exe,javaw.exe,javaws.exe删除即可。开启新的命令行窗口,再执行java -version时,就得到了期望中的结果:

 

通过上面三个问题总结出比较稳妥的环境:

      1.Windows 7,64位

      2.JDK 1.7

      3.eclipse kepler

 

四.数据流分析

参照教程  http://www.bodden.de/2008/08/30/soot-eclipse-plugin-tutorial/ 

其实现的主要步骤:

1.右击Java文件,选择soot->Process Source File->Create Jimple

2.右击Java文件,选择soot->Process Corresponding Class File->Create Jimple

3.右击Java文件,选择soot->Process Source ->Run Soot

 

其执行结果如图所示:



最好还是在Ubuntu下安装吧

 类似资料: