ben*_*ete 7 java java-web-start
我一直试图让webstart在内存不足时转储到堆转储.
我知道jmap/jconsole这样做的方式,但我真正想做的是将选项添加到jnlp文件并尝试了以下选项.
当您将此选项放入 jnlp 文件时,它肯定不起作用。有一个允许的选项列表,其他选项将被忽略。您可以在文档中查看可用 JVM 选项的列表。
请注意,这个想法是最终用户将在他的计算机上运行您的应用程序。您将如何处理他的计算机上的堆转储?它可能是世界上运行您的应用程序的任何人。如果允许您通过 JNLP 文件对最终用户 JVM 执行此操作,则没有多大意义。
我能想到的唯一情况是您可以访问该计算机并且可以稍后检查转储。在这种情况下(您作为最终用户请求转储),如果您从浏览器绕过 jnlp 文件的自动运行并通过命令自行运行它,实际上是可能的javaws。我所采取的成功步骤如下(假设 jnlp 文件是testOOM.jnlp并且您在 Windows 上):
javaws -verbose -J-XX:+HeapDumpOnOutOfMemoryError testOOM.jnlp使用此应用程序将以与浏览器相同的方式启动。但请注意-J允许您向 JVM 提供 JVM 选项的选项。这是可以的,因为请求转储的是 ebd 用户客户端。
堆转储OutOfMemoryError将存储在您运行javaws命令的同一目录中。
| 归档时间: |
|
| 查看次数: |
2658 次 |
| 最近记录: |