我正嘗試使用Spark(在Soot -Eclipse框架中)爲Java代碼生成調用圖。我從HelloWorld開始。即使對於這個小例子,它看起來像系統內存是不夠的。使用Spark(Soot -Eclipse框架)生成調用圖 - 內存問題
Soot has run out of the memory allocated to it by the Java VM.
To allocate more memory to Soot, use the -Xmx switch to Java.
For example (for 400MB): java -Xmx400m soot.Main .
我的機器是基於Windows的4GB Core I-5。 eclipse進程運行的是javaw.exe。即使Helloworld使用碳煙,這種內存不足的行爲是否也會出現?我是新來運行分析的Java和IM不知道如果庫類增加了巨大的開銷。
或者正確的問題是 - 我如何使用-Xmx開關在Windows上的Eclipse中使用更多內存運行Soot - 任何人都可以做到這一點?
Eclipse中的命令如下。我在Spark分析中使用了一些簡化選項。
soot.Main --w --d C:\Users\nbalaji\workspace\HelloWorld\sootOutput
--process-path C:\Users\nbalaji\workspace/HelloWorld/src;
--cp /C:/Users/nbalaji/workspace/HelloWorld/bin/, < bunch of Java/jre7 files >
編輯:現在這已得到解決。 從菸灰生存指南:設置運行 配置時,您應該將以下參數添加到JVM -Xmx512m--Xss256m以增加VM內存。
在進一步的研究中,我發現[** this **](http://edwards.sdsu.edu/research/index.php/daniel/236-increasing-heap-size-in-eclipse)非常有幫助,它解決了這個問題。 – Nik