0
import java.io.*;
import java.util.*;
public class ReadPropertiesFile {       
    public static void main(String[] args)throws Throwable{                
        Properties prop = new Properties();                
        prop.load(new FileInputStream(
            "C:\\Windows\\Sun\\Java\\Deployment\\deployment.properties"));
        String Xmx = prop.getProperty("deployment.javaws.jre.0.args",
                                      "This is Default"); 
        if(Xmx!="This is Default")
        {
            System.setProperty("javaplugin.vm.options","\"Xmx\"");
        }
        long maxMemory = Runtime.getRuntime().maxMemory();
        System.out.println("JVM maxMemory also equals to maximum heap size of JVM: "
                                         + maxMemory);
    }
}

を明示的に言及する場合maxMemory around 96MB(for 2 gb RAM)、何も指定されていない場合の値を出力する必要があります。deployment.properties AND 512MBdeployment.javaws.jre.0.args=-Xmx512m.But in both case i am getting the result 259522560

4

1 に答える 1

4

Hotspot Java実装のJVMメモリパラメータは、JVMの起動/開始時にコマンドラインオプションを介してのみ設定できます。JVMの起動前または起動後にシステムプロパティでそれらを設定しても、効果はありません。

あなたがやろうとしていることは単にうまくいきません。

Javaコードを実行できるようになるまでに、ヒープサイズの設定を変更するにはすぎますコマンドを使用してコードを実行する場合でもjava、Web Startを使用する場合でも、アプレットランナーを使用する場合でも、ブラウザーに埋め込まれたJVMを使用する場合でも...またはその他の方法でコードを実行する場合も同じです。

于 2012-11-28T12:09:47.230 に答える