2011-09-20 16 views
0

我從命令行運行Eclipse的螞蟻轉輪通過以下方式內存:如何提高org.eclipse.ant.core.antRunner

set LAUNCHER=%ECLIPSE_SDK%\eclipse\plugins\org.eclipse.equinox.launcher_1.1.3.0.jar 

%JAVA_HOME%\bin\java.exe -jar %LAUNCHER% -application org.eclipse.ant.core.antRunner -propertyfile %PROPERTIES% -buildfile build.xml 

如何增加提供給這個JVM實例內存?我問這是因爲我正在面對堆空間中的OutOfMemory錯誤並將-vmargs -Xmx512m添加到命令行中並未解決問題

爲了查看是否考慮了-vmargs,我簡單地寫了下面的內容任務:

public class DisplayTask extends Task { 

    @Override 
    public void execute() throws BuildException { 
     System.out.println(Runtime.getRuntime().maxMemory()/1000000); 
    } 
} 

只是在我的build.xml中啓動它(使用taskedf來定義任務)。輸出始終是66無論我把-vmargs -Xmx ....

+0

你能發佈你收到的實際內存不足錯誤嗎?是否與PermGen相關? – mcfinnigan

+0

不是它與堆空間有關。我更新了問題 –

回答

3

我明白了,解決的辦法是增加-Xmx512m選項剛過 java.exe如下:

%JAVA_HOME%\bin\java.exe **-Xmx512m** -jar %LAUNCHER% -application org.eclipse.ant.core.antRunner -propertyfile %PROPERTIES% -buildfile build.xml 

這是最後正常。只有eclipse.exe可執行文件理解-vmargs標誌;當我運行java -jar LAUNCHER時,我正在創建虛擬機,因此必須自己指定參數。

0

如果您在使用本機春分啓動(這你沒有,但也許應該 - 的Eclipse附帶了精心製作的VM參數),你應該知道--launcher.appendVmargs參數(見The Eclipse runtime optionsEclipse/149994eclipse.ini的細節

# eclipse --launcher.appendVmargs -vmargs -Xmx512m -application org.eclipse.ant.core.antRunner -propertyfile %PROPERTIES% -buildfile build.xml