2013-08-16 2 views
0

исключение не выбрасывается, но я все еще не могу найти файл dump.bin в папке моего рабочего стола, мой путь неправильный?jmap дамп не работает

public static void dumpHeap() 
     { 
      System.out.println("dumping data"); 

      String name = ManagementFactory.getRuntimeMXBean().getName(); 
      System.out.println("name :" + name); 
      String pid = name.substring(0, name.indexOf("@")); 
      System.out.println("pid :" + pid); 

      String[] cmd = { "jmap", "-dump:file=/Users/MyName/Desktop/dump.bin", pid }; 
      Process p; 
      try { 
       p = Runtime.getRuntime().exec(cmd); 
      } catch (IOException e) { 
       e.printStackTrace(); 
      } 
+0

ли jmap в вашем PATH? –

ответ

0

Я должен был заставить его с помощью -F

public static void dumpHeap() 

    { 
     System.out.println("dumping data"); 

     String name = ManagementFactory.getRuntimeMXBean().getName(); 
     System.out.println("name :" + name); 
     String pid = name.substring(0, name.indexOf("@")); 
     System.out.println("pid :" + pid); 

     String[] cmd = { "jmap", "-dump:file=/Users/MyName/Desktop/dump.bin", "-F", pid }; 
     Process p; 
     try { 
      p = Runtime.getRuntime().exec(cmd); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
Смежные вопросы