Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
EclipseでのデバッグTips
Eclipseをフル活用して素早く問題解決しよう!
スタイル・フリー SIer事業部 滝上 尚
(h_takigami@style-free.co.jp)
デバッグを極めると
開発スピードが驚くほど上がります。
あなたの原因究明は
ログ派 ?
それとも
デバッグ派 ?
• 割り算の結果を表示するプログラム
• 引数で10, 0を渡すと10を0で割るため、
ゼロ除算例外(ArithmeticException)
が発生します。
Calc.java
ログ派のイマイチくんの原因究明まで
① ソースにデバッグログの埋め込み
↑修正したソースは次のシート
② コンパイル
③ 実行
④ # 4まで実行したことの確認
⑤ ゼロ除算が原因であることを突き止める
⑥ 元のソースに戻す
⑦ 修正
⑧ コン...
Calc.java
デバッグ派の出来杉くんの原因解析まで
① ソースにブレークポイントの埋め込み
② 実行
③ ゼロ除算が原因であることを突き止める
④ 修正
⑤ コンパイル
作業数の違いが開発スピードに表れます
また、ログ派ではソースを変更しているので
新たなバグを埋め込んだ可能性も
さあ
デバッグを始めましょう
・マウスでの操作
ツールバーの虫(デ「バグ」)をクリック
Tips-001 デバッグの開始
ショートカット
再実行
再実行
Mac control + option + command + D → J
Windows Alt + Shift +...
デバッグ実行時、ブレークポイントで
一時停止します。
Tips-002 ブレークポイントの設定
・マウスでの操作
行番号の横のマーカーバーを
ダブルクリック
Tips-002 ブレークポイントの設定
※行にカーソルがある状態
実行した処理を一時停止したい箇所には「ブレークポイント」
ショートカット
Mac command * shift ...
Step Into
Tips-003 ステップ実行
今から呼ぶメソッド部に入り、
最初の文を実行する直前で一時停止する。
Step Over
今から呼ぶメソッドを実行し、
次の文を実行する直前で一時停止する。
Step Return
現在のメソ...
Tips-004 Step Into
ショートカット
Mac F5
Windows F5
Tips-005 Step Over
ショートカット
Mac F6
Windows F6
Tips-006 Step Return
ショートカット
Mac F7
Windows F7
Tips-007 Step Resume
ショートカット
Mac F8
Windows F8
Tips-008 Run to Line
ショートカット
Mac command + R
Windows Ctrl + R
Tips-009 Drop to Frame
スタック上のフレームを捨てるとメソッドの呼び出し直後に戻ります。
フレーム削除方法
①スタックのフレームを右クリック
②フレームにドロップをクリック
Tips-0010 ブレークポイントの無効化
・全無効化
ツールバーの
Skip all breakpointsをクリック
・1つのみ無効化
ブレークポイントに対して
Shift + ダブルクリック
Tips-0011 変数タブ
変数の中身を見ることができる
変数の値が更新されると黄色くなる
実行中に値を変更することができる
Tips-0012 ブレークポイントタブ
ブレークポイントに詳細な条件を設定することができます
アクセス
フィールドにアクセスされた時に一時停止
変更
フィールドの値が更新された時に一時停止
Tips-0012 ブレークポイントタブ
・ヒット・カウント
繰り返し処理で
指定回数になると
一時停止する
ここでは「45」を指定
Tips-0012 ブレークポイントタブ
45回目の繰り返し処理時、
一時停止する
Tips-0012 ブレークポイントタブ
例外発生時に一時停止することもできます
ブレークポイントビューのJ!をクリック
Tips-0012 ブレークポイントタブ
Java例外ブレークポイントの追加ダイアログから
例外の種類を選択してOKを押下する。
Tips-0013 式タブ
式を実行した結果を見ることができます
Tips-0014 表示ビュー
デバッグ中に例外を発生させることができます。
①例外を発生させたい箇所でブレーク
②例外を投げるコードを記述してから実行
(次のブレークポイントまで進みます)
Tips-0015 ホットコードリプレイス
デバッグ中にコードの書き換えも可能です
• クラス名、メソッド名等は変更不可
• 行の増減ができない
• リモートデバッグでコードの変更不可
これらのTipsを活かし
より良い開発を行いましょう!
付録 Calc.java
public class Calc {
public static void main(String[] args) {
Integer v1 = new Integer(args[0]);
Integer v2 = ...
付録 Counter.java
public class Counter {
public static void main(String[] args) {
new Counter().execute();
return;
}
public ...
Upcoming SlideShare
Loading in …5
×

EclipseでのデバッグTips

1,666 views

Published on

eclipse利用したデバッグのコツをご紹介
開発の効率化、問題の素早い解決に役立ちます。

Published in: Technology
  • Have u ever tried external professional writing services like ⇒ www.HelpWriting.net ⇐ ? I did and I am more than satisfied.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • I have always found it hard to meet the requirements of being a student. Ever since my years of high school, I really have no idea what professors are looking for to give good grades. After some google searching, I found this service ⇒ www.WritePaper.info ⇐ who helped me write my research paper. The final result was amazing, and I highly recommend ⇒ www.WritePaper.info ⇐ to anyone in the same mindset as me.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Hello! I can recommend a site that has helped me. It's called ⇒ www.HelpWriting.net ⇐ They helped me for writing my quality research paper.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • DOWNLOAD THI5 BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { http://bit.ly/2m6jJ5M } ......................................................................................................................... Download Full EPUB Ebook here { http://bit.ly/2m6jJ5M } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { http://bit.ly/2m6jJ5M } ......................................................................................................................... Download EPUB Ebook here { http://bit.ly/2m6jJ5M } ......................................................................................................................... Download doc Ebook here { http://bit.ly/2m6jJ5M } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

EclipseでのデバッグTips

  1. 1. EclipseでのデバッグTips Eclipseをフル活用して素早く問題解決しよう! スタイル・フリー SIer事業部 滝上 尚 (h_takigami@style-free.co.jp)
  2. 2. デバッグを極めると 開発スピードが驚くほど上がります。
  3. 3. あなたの原因究明は ログ派 ? それとも デバッグ派 ?
  4. 4. • 割り算の結果を表示するプログラム • 引数で10, 0を渡すと10を0で割るため、 ゼロ除算例外(ArithmeticException) が発生します。
  5. 5. Calc.java
  6. 6. ログ派のイマイチくんの原因究明まで ① ソースにデバッグログの埋め込み ↑修正したソースは次のシート ② コンパイル ③ 実行 ④ # 4まで実行したことの確認 ⑤ ゼロ除算が原因であることを突き止める ⑥ 元のソースに戻す ⑦ 修正 ⑧ コンパイル
  7. 7. Calc.java
  8. 8. デバッグ派の出来杉くんの原因解析まで ① ソースにブレークポイントの埋め込み ② 実行 ③ ゼロ除算が原因であることを突き止める ④ 修正 ⑤ コンパイル
  9. 9. 作業数の違いが開発スピードに表れます また、ログ派ではソースを変更しているので 新たなバグを埋め込んだ可能性も
  10. 10. さあ デバッグを始めましょう
  11. 11. ・マウスでの操作 ツールバーの虫(デ「バグ」)をクリック Tips-001 デバッグの開始 ショートカット 再実行 再実行 Mac control + option + command + D → J Windows Alt + Shift + D → J Mac command + F11 Windows F11
  12. 12. デバッグ実行時、ブレークポイントで 一時停止します。 Tips-002 ブレークポイントの設定
  13. 13. ・マウスでの操作 行番号の横のマーカーバーを ダブルクリック Tips-002 ブレークポイントの設定 ※行にカーソルがある状態 実行した処理を一時停止したい箇所には「ブレークポイント」 ショートカット Mac command * shift + B Windows Ctrl + Shift + B
  14. 14. Step Into Tips-003 ステップ実行 今から呼ぶメソッド部に入り、 最初の文を実行する直前で一時停止する。 Step Over 今から呼ぶメソッドを実行し、 次の文を実行する直前で一時停止する。 Step Return 現在のメソッドから復帰し、 次の文を実行する直前で一時停止する。 Step Resume 次のブレークポイントまで実行する プレークポイントがなければ、処理を最後まで実行する。
  15. 15. Tips-004 Step Into ショートカット Mac F5 Windows F5
  16. 16. Tips-005 Step Over ショートカット Mac F6 Windows F6
  17. 17. Tips-006 Step Return ショートカット Mac F7 Windows F7
  18. 18. Tips-007 Step Resume ショートカット Mac F8 Windows F8
  19. 19. Tips-008 Run to Line ショートカット Mac command + R Windows Ctrl + R
  20. 20. Tips-009 Drop to Frame スタック上のフレームを捨てるとメソッドの呼び出し直後に戻ります。 フレーム削除方法 ①スタックのフレームを右クリック ②フレームにドロップをクリック
  21. 21. Tips-0010 ブレークポイントの無効化 ・全無効化 ツールバーの Skip all breakpointsをクリック ・1つのみ無効化 ブレークポイントに対して Shift + ダブルクリック
  22. 22. Tips-0011 変数タブ 変数の中身を見ることができる 変数の値が更新されると黄色くなる 実行中に値を変更することができる
  23. 23. Tips-0012 ブレークポイントタブ ブレークポイントに詳細な条件を設定することができます アクセス フィールドにアクセスされた時に一時停止 変更 フィールドの値が更新された時に一時停止
  24. 24. Tips-0012 ブレークポイントタブ ・ヒット・カウント 繰り返し処理で 指定回数になると 一時停止する ここでは「45」を指定
  25. 25. Tips-0012 ブレークポイントタブ 45回目の繰り返し処理時、 一時停止する
  26. 26. Tips-0012 ブレークポイントタブ 例外発生時に一時停止することもできます ブレークポイントビューのJ!をクリック
  27. 27. Tips-0012 ブレークポイントタブ Java例外ブレークポイントの追加ダイアログから 例外の種類を選択してOKを押下する。
  28. 28. Tips-0013 式タブ 式を実行した結果を見ることができます
  29. 29. Tips-0014 表示ビュー デバッグ中に例外を発生させることができます。 ①例外を発生させたい箇所でブレーク ②例外を投げるコードを記述してから実行 (次のブレークポイントまで進みます)
  30. 30. Tips-0015 ホットコードリプレイス デバッグ中にコードの書き換えも可能です • クラス名、メソッド名等は変更不可 • 行の増減ができない • リモートデバッグでコードの変更不可
  31. 31. これらのTipsを活かし より良い開発を行いましょう!
  32. 32. 付録 Calc.java public class Calc { public static void main(String[] args) { Integer v1 = new Integer(args[0]); Integer v2 = new Integer(args[1]); new Calc().divide(v1, v2); return; } public void divide(Integer v1, Integer v2) { System.out.println("v1=" + v1); System.out.println("v2=" + v2); System.out.println("result=" + (v1 / v2)); } }
  33. 33. 付録 Counter.java public class Counter { public static void main(String[] args) { new Counter().execute(); return; } public void execute() { // 0から99までカウントを出力する for (int i = 0; i < 100; i++) { System.out.println("count=" + i); System.out.println(); } } }

×