我正在使用java「1.6.0_24」OpenJDK。有時當我運行我的程序時,我所得到的只是一條消息無法創建Java VM ---我如何獲得更詳細的錯誤消息?
Could not create the Java virtual machine.".
某些其他時候,程序運行得很好。
是否有一些選項可以添加以獲得更詳細的輸出,以確切的錯誤(甚至可能類似於核心轉儲?)。
這可能不是因爲在這種情況下,相關的堆大小,它確實給一個明確而清晰的錯誤信息,如: -
Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.
這我能解決與設置-Xms和-Xmx適當。但是,JVM退出而不打印任何其他內容是非常無益的。
爲了澄清,我的問題是關於哄更多詳細的錯誤消息或某種狀態文件/核心轉儲,然後我可以使用它進行調試。
那麼我有一臺64 GB RAM的機器,我將-Xms設置爲100M。雖然這臺機器是集羣的一部分,但可用內存通常大約爲16GB(我通過在獨立終端上運行頂部來驗證)。同樣的問題也是如此...(我有其他機器內存少得多,這就是爲什麼我設置-Xms爲100M來解決_that_問題) – owagh
我不確定什麼可以比這更詳細。內存分配是JVM初始化的第一件事情之一。顯然,你的問題來自-Xmx而不是-Xms參數。 JVM在初始化時將堆分配給最大大小。您的最高限額太高。在32位JVM上,你只能使用不超過1.5GB – gigadot