2014-01-30 21 views
1

我使用Eclipse進行Java在我的MacBook Air,OS 10.9過時的方法。我不斷收到錯誤Obsolete Methods on the Stack,具有約當我運行沒有錯誤非常基本的程序可能會導致怎樣的問題與虛擬機的警告。我運行了一個只有類和主要方法的程序,並且出現了這個錯誤。錯誤框後,錯誤指的主要方法,但我知道的語法是正確的,因爲我使用Eclipse的主要方法。Eclipse的堆棧

import java.util.Scanner; 

public class Dowhile { 

    public static void main(String[] args) { 
     /*Scanner scanner = new Scanner(System.in); 
     System.out.println("Enter a number"); 
     int value = scanner.nextInt(); 
     System.out.println(value);*/ 
     /*do{ 
      System.out.println("Enter a number "); 
      int value = scanner.nextInt(); 

     } 
     while(value != 5); 
     System.out.println("Got 5");*/ 
    } 
} 

更新:

我不是現在越來越過時的方法錯誤,只是Exception in thread "main"... at line 5

+2

您正在編輯的程序在調試時,和Eclipse是告訴你它有麻煩讓你的源代碼,並在同步運行的程序。所以不要這樣做。這只是一個警告,而不是程序中的錯誤或錯誤。 – Chris

+0

我不明白。我不明白爲什麼我編輯的程序在調試時,我沒有做任何事情後,我跑了。它確實表示代碼中存在錯誤,與主要方法一致。 – slaga

+0

1.請發佈您的代碼,即使您確定它沒有錯誤。 2.你確定你的程序已經終止? (在eclipse工具欄上沒有紅色的「停止」按鈕) – Chris

回答

1

此錯誤消息表明您正在執行熱代碼替換,並且堆棧中的幀不再與正在運行的VM中的類文件相匹配。 重新啓動調試會話/目標虛擬機就足夠了。

熱代碼替換(HCR)含義:

它是調試技術,由此在Eclipse Java調試器在調試信道到另一個JVM發送新的類文件。

read more

Bugzilla

Dreamincode