㈠ java調試
path路徑沒有配置好,系統找不到你的虛擬機。操作系統找JVM的過程是先到你系統當前文件夾里找,沒找到就到你配置的path里去找,你只要配置path成你的java的bin目錄下路勁就好!希望能幫你解決問題
㈡ java程序調試的5種方法
1.debug。斷點調試。
2.輸出消息。system.out.println();來調試。
3.動態代理(Dynamic Proxy)。動態代理是一個特定的Java特性,它允許開發者引入proxy類,加進某一給定類之前,並通過某一給定介面截獲所有調用。你可以在很短時間內用一個普通代理設置一個虛擬事件處理器,來查看事件發生順序。當需要理解事件處理器時這是最簡單和快捷的方法。
4.運行時剖析器(Run-time Profiler)。剖析器是通過特定的JVM hooks在系統中跟蹤所有調用的強大工具。但是用它來跟蹤執行過程是大才小用。
5.Aspects。面向方面編程。它是截獲你的代碼執行既快速又容易的方法。你可以圍繞方法、構造器、屬性訪問等等有選擇地設置hook,而不需要修改原始代碼。在這些hook中,你可以列印調試消息。
1.2常用的。3.4.5網上找的。
㈢ Java中怎樣單步調試
java單步調試,在你覺得會出錯的地方,左邊豎條上雙擊,會出現一個圓圈圈,那就是斷點,設置好後,點擊java上邊的爬蟲圖標。
運行你的代碼,待頁面運行到你剛剛打斷點的地方,按f6,一步一步向下邊運行,如果想查看變數裡面的值,就選中你的頁面代碼變數,右鍵->inspect,這樣就可以了
㈣ java如何調試
最基本的操作是:
1, 首先在一個java文件中設斷點,然後運行,當程序走到斷點處就會轉到debug視圖下,
2, F5鍵與F6鍵均為單步調試,F5是step into,也就是進入本行代碼中執行,F6是step over,
也就是執行本行代碼,跳到下一行,
3,F7是跳出函數
4,F8是執行到最後。
1.Step Into (also F5) 跳入
2.Step Over (also F6) 跳過
3.Step Return (also F7) 執行完當前method,然後return跳出此method
4.step Filter 逐步過濾 一直執行直到遇到未經過濾的位置或斷點(設置Filter:window-preferences-java-Debug-step Filtering)
5.resume 重新開始執行debug,一直運行直到遇到breakpoint
6.hit count 設置執行次數 適合程序中的for循環(設置 breakpoint view-右鍵hit count)
7.inspect 檢查 運算。執行一個表達式顯示執行值
8.watch 實時地監視變數的變化
9.我們常說的斷點(breakpoints)是指line breakpoints,除了line
breakpoints,還有其他的斷點類型:field(watchpoint)breakpoint,method
breakpoint,exception breakpoint.
10.field breakpoint 也叫watchpoint(監視點) 當成員變數被讀取或修改時暫掛
11.添加method breakpoint 進入/離開此方法時暫掛(Run-method breakpoint)
12.添加Exception breakpoint 捕抓到Execption時暫掛(待續...)斷點屬性:
1.hit count 執行多少次數後暫掛 用於循環
2.enable condition 遇到符合你輸入條件(為ture\改變時)就暫掛
3.suspend thread 多線程時暫掛此線程
4.suspend VM 暫掛虛擬機
13.variables 視圖里的變數可以改變變數值,在variables 視圖選擇變數點擊右鍵--change value.一次來進行快速調試。
14.debug 過程中修改了某些code後--〉save&build--resume--重新暫掛於斷點
㈤ 如何調試一個java文件
首先打開自己的項目
Eclipse中JAVA項目如何調試
在項目中找到想要調試的地方,如圖,在代碼行的前方點擊設置斷點,或者把滑鼠移動到代碼行,用快捷鍵「Ctrl+Shift+b」設置斷點
Eclipse中JAVA項目如何調試
然後在上方標簽欄中,如圖操作「Debug As」->"Java Application"
Eclipse中JAVA項目如何調試
在彈出的對話框點擊「Yes」,進入「debug模式」
Eclipse中JAVA項目如何調試
5
在窗口的右上方可以看到 代碼中的相對應得值
Eclipse中JAVA項目如何調試
㈥ Java調試
靜態域或塊是在類的<clinit>方法 里載入的,非靜態部分在<init>方法裡面載入,<clinit>在class載入的時候運行,<init>在實例創建之前運行。說白了就是只有new的時候才執行非靜態,但是這時候靜態部分必須已經載入完了
給你段代碼執行以下自己琢磨吧:
public class Test {
public static void main(String[] args) throws ClassNotFoundException {
//Class a=Test1.class;
Class.forName("test.Test1");
new Test1();
}
}
class Test1{
static {
String string=null;
//string.toString();
}
public Test1(){
String s=null;
s.toString();
}
}
㈦ 如何調試java程序
採用打斷點的方式,可以觀察變數值的變化,從而起到調式程序的作用。
在需要調試的代碼前面打斷點。
通過Debug Character方式運行程序。
Step Over(F6)執行下一步
註:執行過程中將游標移到變數下面,可以查看每一步變數的值。
如下圖:
㈧ java 程序調試
錯誤:class HelloFrame extends JFrame (){
JLable lable = new JLable("Hello World!"):
setTitle(""HelloFrame);
改後如下:
package frame;
import java.awt.BorderLayout;
import java.awt.Dimension;
import javax.swing.*;
public class FrameTest {
public static void main(String args[]){
SwingUtilities.invokeLater(new Runnable() {
public void run(){
HelloFrame frame = new HelloFrame();
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
});
}
}
class HelloFrame extends JFrame{
JPanel contentPane;
public HelloFrame(){
contentPane = (JPanel) getContentPane();
JLabel lable = new JLabel("Hello World!");
contentPane.add(lable,BorderLayout.CENTER);
setTitle("HelloFrame");
setSize(new Dimension(400,300));
}
}
編譯過了,沒錯誤了……
㈨ java程序怎麼調試
就是你說的Junit了?寫好一個類或一個方法測試就行了。eclipse已經把junit的jar包給集成進去了,你直接可以調用裡面的方法做測試或者自己在System列印做測試了...寫一點測試一點,跟你代碼量無關了,代碼多也是一點一點的寫出來的,寫一點測試一點,代碼多說明這些代碼你都做過測試的都是正常的了,你說的調試bug一般就用debug調試了打個點然後按F5一步一步的執行找出錯誤和異常了...