我試圖與下面的代碼Java內存轉儲問題
**/usr/lib/jvm/j2sdk1.5-sun/bin/jmap -heap 10699**
使用,以創建內存轉儲,但我得到以下提到的錯誤,任何人都可以幫助我
附加到進程ID 10699,請稍候... 錯誤連接到過程:sun.jvm.hotspot.debugger.DebuggerException:無法連接到進程
我使用Java 5
我試圖與下面的代碼Java內存轉儲問題
**/usr/lib/jvm/j2sdk1.5-sun/bin/jmap -heap 10699**
使用,以創建內存轉儲,但我得到以下提到的錯誤,任何人都可以幫助我
附加到進程ID 10699,請稍候... 錯誤連接到過程:sun.jvm.hotspot.debugger.DebuggerException:無法連接到進程
我使用Java 5
爲了積極主動,我假設你正在運行ubuntu。在這種情況下,鍵入以下內容:
echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
如果你不運行Ubuntu,我會建議您運行JMAP爲相同的用戶跑到你的目標進程
可能值得鏈接到[bug JDK-7050524](http://bugs.java.com/bugdatabase/view_bug.do?bug_id=7050524),它記錄了這一點。 – 2015-05-12 01:16:30
(假設你在Ubuntu的)
快速修復是echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
。
如果您希望在重新啓動後能夠繼續存在,並且您不想損害受限制的ptrace_scope
提供的保護,那麼我建議在需要ptrace的二進制文件上使用setcap cap_sys_ptrace=eip
。對於java開發者,你可以運行這個命令(作爲root)
find /usr/lib/jvm -type f -perm -o+x -exec setcap cap_sys_ptrace=eip {} \;
你在使用什麼操作系統? – KevinDTimm 2013-04-04 12:25:16