Soot產生代碼控制流程圖

來源:互聯網
上載者:User

標籤:進入   java7   png   圖形   代碼   bsp   目前的目錄   檔案   功能   

Soot可以對代碼進行分析,提供了多種位元組碼分析和變換功能,通過它可以進行過程內和過程間的分析最佳化,以及程式流圖的產生,還能通過圖形化的方式輸出。

http://www.brics.dk/SootGuide/上面有官方的guide

 

1. 環境準備:

a. 下載安裝java7,不能用java8 (soot3.0.1可以用java8)

b. 下載soot jar包 https://www.sable.mcgill.ca/soot/soot_download.html

c. 設定好 JAVA_HOME

d. 將soot-2.5.0.jar和test.java檔案放到同一個目錄下,如 D:\\testflow

 

2. 運行步驟

a. 命令列方式進入D:\\testflow, 編譯java源檔案   javac test.java

 

b. java -cp soot-2.5.0.jar soot.tools.CFGViewer --soot-classpath .;"%JAVA_HOME%"\jre\lib\rt.jar test

,在目前的目錄下會產生sootOutput檔案夾,產生test.dot檔案 

 

c. 下載graphviz(任意版本),解壓後bin目錄裡運行dot -Tpng test.dot -o testflow.png

產生的控制流程圖如下:

 

Soot產生代碼控制流程圖

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.