[英]Loading Java class files for Soot dynamically in Eclipse
我目前正在開發一個程序,該程序將兩個控件-流程圖相互比較(這些圖表是用Soot生成的)。 這些圖屬於兩個不同的類別。 因此每一個CFG。
目前,我正在使用以下方法加載類:
SootClass sClassNew = Scene.v().loadClassAndSupport("Calc");
sClassNew.setApplicationClass();
SootClass sClassOld = Scene.v().loadClassAndSupport("Calc2");
sClassOld.setApplicationClass()
如果我通過在項目上單擊鼠標右鍵來添加包含Calc.java和Calc2.java類的文件夾,則此方法有效。 Java構建路徑 添加外部類文件夾| 選擇文件夾。
不幸的是,這並不是我想要的,因為:
一個重要的注意事項是,Soot只會從Soot的類路徑中找到的JAR文件和目錄中加載文件。 有誰知道我如何解決這兩個問題?
煤煙並未真正解決這個問題。 它的主要數據結構是Scene,在其中包含其所要說明的所有類,並且每個類名只能包含一個類實例,而該場景不能有兩個不同的版本。
話雖如此,我們最近已經建立了一個名為Reviser的Soot擴展(目前正在提交中): https : //github.com/StevenArzt/reviser Reviser逐步更新程序的過程間控制流程圖和IFDS / IDE分析信息。 。 為了使這項工作奏效,我們不得不反復研究Soot的類加載機制。 這絕非易事。 如果您對這些細節感興趣,請發送個人郵件給Steven Arzt和我本人。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.