2016-10-27 6 views
0

私は1GBのメモリで動作するWeb Startアプリケーションを持っていますが、4GBのメモリがあればかなりの速さで動作します。ですから、64ビットJVMの場合、4GBを使用したいと思っています。Java Web Startを使用して、32ビットおよび64ビットJVMの最大ヒープサイズを変えることは可能ですか?

これは可能ですか? JNLPファイルに、32ビットJVMと64ビットJVMの最大ヒープを個別に指定する方法はありますか?それは動作しませんでした

<resources> 
    <j2se version="1.8+" java-vm-args="-XX:+UseParallelGC -XX:+HeapDumpOnOutOfMemoryError"/> 
</resources> 

<resources os="Windows" arch="x86"> 
<j2se href="http://java.sun.com/products/autodl/j2se" onclick="javascript:mytracker(this.href);" version="1.8+" 
    max-heap-size="1024m"/> 
</resources> 

<resources os="Windows" arch="x86_64"> 
<j2se href="http://java.sun.com/products/autodl/j2se" onclick="javascript:mytracker(this.href);" version="1.8+" 
    max-heap-size="4096m"/> 
</resources> 

アップデートは私はこれらの行とJNLPファイルを試してみました。アーキテクチャー固有のリソースブロックの他の行は機能していたので、 "arch"属性を持つリソースブロックが正しく識別され、使用されていることがわかりました。私は簡潔にするために、この記事の他の行を削​​除しました。

答えて

1

はい、アーキテクチャに基づいて異なる最大ヒープサイズを指定できます。ここに例があります:

<resources os="Windows" arch="x86"> 
<j2se href="http://java.sun.com/products/autodl/j2se" onclick="javascript:mytracker(this.href);" version="1.8+" 
    max-heap-size="1024m"/> 
</resources> 

<resources os="Windows" arch="x86_64"> 
<j2se href="http://java.sun.com/products/autodl/j2se" onclick="javascript:mytracker(this.href);" version="1.8+" 
    max-heap-size="4096m"/> 
</resources> 

上記の例と質問に記載されている例との違いに注目してください。質問の例の最初のresourcesタグは削除されています。 Java Web Startランチャーは、/ aインストールされたJVMと一致する最初ののj2seタグのみを認識するため、これは重要です。質問の例では、最初のj2seタグが一致するので、それが使用され、その中で指定された引数が使用されます。後続のj2seタグの引数ではありません。

関連する問題