トップページtech
68コメント17KB

JDI(Java Debug Interface)について語るスレ

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
Java Debug Interfaceについて語るスレです。
また、JPDAなど

関連HP
http://java.sun.com/j2se/1.4/ja/docs/ja/guide/jpda/jpda.html

http://java.sun.com/products/jpda/

http://www.vorlesungen.uni-osnabrueck.de/informatik/javaapi/jdi/inh-ref.html
0002デフォルトの名無しさんNGNG
いまどき Java って、、、
00032の続きNGNG
…超まぶいぜ!!
0004デフォルトの名無しさんNGNG
( ̄ー ̄)ニヤリッ
0005デフォルトの名無しさんNGNG
           _∧_∧
        / ̄ ( ・∀・)⌒\ ガッ!!
   __    /  _|     |   |
   ヽヽ   /  /  \    |   |           ,,,,,,,iiiiillllll!!!!!!!lllllliiiii,,,,,,,
    \\|  |____|   .|   |           .,llll゙゙゙゙゙        ゙゙゙゙゙lllll,
     \/  \       |   |           .|!!!!,,,,,,,,       ,,,,,,,,,!!!!|
     | ヽ_「\      |   |、         |  ゙゙゙゙!!!!llllliiiiiiiiiilllll!!!!゙゙゙゙ .| 
     |    \ \――、. |   | ヽ         .|     .゙゙゙゙゙゙゙゙゙゙     |
     |   / \ "-、,  `|  |  ヽ       |               |
  _/   /    "-, "' (_  ヽ  ヽ      .|               |
/    __ノ      "'m__`\ヽ_,,,, ヽ      |               |
`ー― ̄          ヽ、__`/ー_,,,, ゙゙゙゙!!!!!!!lllllllliii|               |
                    \゙゙゙゙゙゙゙!!!!!lllllllliiiii|               |
                      \   ヽ   |               |
                       ヽ   \  |               |
                        |     \.|               |
                        `ヽ、,,_ノ|               |
                              ゙゙!!!,,,,,,,,       ,,,,,,,,,!!!゙゙
                                   ゙゙゙゙!!!!llllliiiiiiiiiilllll!!!!゙゙゙゙
                                /.// ・l|∵ ヽ\  ←>>1


0006デフォルトの名無しさんNGNG
今時Javaなんかを持ち上げてる時代遅れはとっとと引退して首吊った方がいいよ。(ギャハ
0007デフォルトの名無しさんNGNG
だったら無視すりゃいいじゃん。
無視できないくらい必死なのか。
0008デフォルトの名無しさんNGNG
オマエモナー
0009デフォルトの名無しさんNGNG
>>1
jdbコマンドとどう違うんですか?
0010デフォルトの名無しさんNGNG
最近Javaスレを荒らす馬鹿厨房が多いな。
0011デフォルトの名無しさんNGNG
>>10
中の人も大変ですね。
0012デフォルトの名無しさんNGNG
Java用デバッガをJavaで独自に改良できると言うこと?
0013NGNG
簡単に説明すると、
JavaVMが二つあって、
片方がテストプログラムを動かす用(ターゲットVM)で、
もう片方がそれを監視する用のVMです。
動かしている方は通常通りですが、
監視している方はJDIを使用して、
ターゲットVMを動かしたり止めたり動作情報を得ることが可能です。
0014デフォルトの名無しさんNGNG
テストは
Junitでは十分、とはいきませんかねぇ?
0015デフォルトの名無しさんNGNG
全てにJUnitで完全に完結するなら結合テストなんていらないじゃん。
0016デフォルトの名無しさんNGNG
テストにしか利用できないと思ってる時点で、
おまえら、へぼプログラマン。
発想力の枯渇した、会社のごみだな。
0017デフォルトの名無しさんNGNG
(´・ω・`)社長なんだけど・・・ごみか・・・
0018デフォルトの名無しさんNGNG
>>16
実稼動サーバの状態管理にJDIだのを使うの?

…デバッグモードで動かしてリモートからコントロールなんかしたら、
情報の状態をアセンブラコード単位で中間状態なしで確定させなきゃな
らんので、HotSpotその他のVM最適化技術をとめないといかんと思うの
だが。ターゲットVMの実行性能落ちてもいいの?
0019デフォルトの名無しさんNGNG
>>14
スレッド間排他のミスに起因するバグなんかは、ユニットテストなんかじゃ
見つからんよ。
0020デフォルトの名無しさんNGNG
>>18
頭わるー、わざわざ欠点になるような使い方を例にあげてる時点で
0021デフォルトの名無しさんNGNG
なんだ、ハッタリか。
0022デフォルトの名無しさんNGNG
>>1 の 3 つめのリンク読めねー YO!
せめて英語のサイトにしてくれ。
0023デフォルトの名無しさんNGNG
アプローダーです。エロ画像UPしなさい
http://www.k-514.com
0024デフォルトの名無しさんNGNG
しかし、このJDIを使いこなしている人はどれくらいいるのだろうか.....? 
0025デフォルトの名無しさんNGNG
>>24 デバッガー作る人やVM作ってデバッグするためのインターフェースでそ。
一般人が有効活用できなくても問題なし。
堅牢/地道なバージョンのRMIやReflectionAPIと考えると、
なんか面白い事が出来そう。。。

0026デフォルトの名無しさんNGNG
VMコントローラだな
0027デフォルトの名無しさんNGNG
age
0028デフォルトの名無しさんNGNG
>>20
じゃあどんなことに使うのよ?

VMの監視を行う時点で、監視対象のVMに対して何がしかのオーバーヘッド
をかけざるを得ないと思うが。

0029デフォルトの名無しさんNGNG
http://jp.st66.arena.ne.jp/cgi-bin/vote+/vote.cgi?detail=%82%a8Java%8f%97%82%c7%82%ea%82%dd&room=1047469261
0030デフォルトの名無しさんNGNG
>>29
なんに投票させたいのでつか?
0031デフォルトの名無しさんNGNG
Win2000でTCP/IPフィルタリング有効にしたのが原因で、
デバッガが立ち上がらなくなってた。
気付くのに1ヶ月かかったよ。とほほ。
自宅のマシンだからまだよかったけどさ。
0032デフォルトの名無しさんNGNG
JDI使ったサンプルが載った、JDIを易しく解説してるサイトないっすか?
0033デフォルトの名無しさんNGNG
見当たらないねえ、俺もそんなサイトがあったら教えて欲しい。
0034デフォルトの名無しさんNGNG
>>33
なんて骨体
java.sunのサイトみて修行するしかないのか。

むしろこのスレでレスした詳しそうな人が教えてくれたら嬉しい
0035山崎渉NGNG
(^^)
0036デフォルトの名無しさんNGNG
このJDIをEclipseによって簡単に使える方法はありませんか?
0037デフォルトの名無しさんNGNG
JavaDebugInterfaceの未来は?
0038デフォルトの名無しさんNGNG
>>37
デフォルトでJREに内蔵され続ける。
0039デフォルトの名無しさんNGNG
instanceof ??? で分岐させて、ログ取るだけさ…。
0040山崎渉NGNG
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉
0041デフォルトの名無しさんNGNG
windowsなんですが、ダイアローグ内で済ませられるプログラムは、
JDIで情報を取得することができるんですが、
別ウィンドウで立ち上げて実行するようなプログラムに対しての対処法が
分かりません。実行すると止まって、JDI側のプログラムを強制終了
させると、対象プログラムが実行されます。
対処法を知ってる方、いませんか?
0042デフォルトの名無しさんNGNG
( ̄ー ̄)ニヤリッ
0043デフォルトの名無しさんNGNG
いまどき Java って、、、
0044デフォルトの名無しさんNGNG
>>1

jdbコマンドでデバッグするやつとはどう違う?

Eclipseのデバッガとはどう違う?
0045デフォルトの名無しさんNGNG
JDIはデバッガそのものじゃなくて
デバッガを実装するためのインタフェースでしょ

jdbもEclipse JDTのデバッガもこれ使ってるんじゃないかな

こういうものがあればひとつの開発環境上で
いろんなVMを切り替えながらデバッグが出来る訳で
0046デフォルトの名無しさんNGNG
JDIか…こんなマニアックなスレがあるとは…。

以前に「機能ごとに、全メソッドに渡るシーケンスの記述を行った設計書」を要求されたことがあって、
JDIでメソッド呼び出しを追った結果と、Docletで作った和名情報を元に、
設計書を自動生成するツールを作ったことがあるです。

ちょっとした機能でも数千行に及ぶコールツリーが出力されて、使い物にならなかったが…。
興味があるひとがいたら、どっかにUPするけど、まあいないだろーなー。
0047デフォルトの名無しさんNGNG
>>46
メソッドコールに、設計書への出力対象とするかどうかの重み付けが
出来ないと、使えないな。それができれば何とかならへんか?
0048デフォルトの名無しさんNGNG
>>47
いま昔のソース見てみたら、MethodEntryRequest#addClassFilter(String)によるクラスの絞込みやら、
MethodEntryEvent時に、絞り込み対象のメソッド名ならそこはトレースしない、といった処理が書いてあったです。

でも、絞り込み情報を記述するファイルを見ると、ほとんど中身がすっからかんなので、
役に立たなかったのか、それとも絞込み対象の選別自体がとてもやってられなかったのか…
0049デフォルトの名無しさんNGNG
>>48
クラスライブラリの設計が明確でなきゃ、どこをトレースすべきなのか
というポイントなんぞ、決められんからねえ。
ツールの問題というより、開発体制とかそっちに問題あったんじゃないの。
0050_NGNG
http://homepage.mac.com/hiroyuki44/
0051デフォルトの名無しさんNGNG
>>49
えっと。
それ、正解です。 ・゚・(ノД`)・゚・
0052デフォルトの名無しさんNGNG
>>51
いやいや、つっこんどいてなんだけど、

う ち も に た り よ っ た り 

です(ワラ
0053デフォルトの名無しさんNGNG
JDIのソースにはjava.lang.reflectが使い放題?

けど今はあまりソース読む気がしない( ・∀・ )
0054デフォルトの名無しさんNGNG
>>46
みたいなことをしたいなら、AspectJ使ったほうが簡単そうだがな。
0055デフォルトの名無しさんNGNG
もうJUnitとthrows宣言で腹いっぱいだよ。
0056デフォルトの名無しさんNGNG
AspectJって、Eclipseのサブプロジェクトになったんだな。
IBMはCPLライセンスのプロジェクト群の公開について、ASF
をパクッテいるんだな。いいことなんだな。
0057デフォルトの名無しさんNGNG
>>54
AspectJさわりだけ見たけど、大したことしないなら充分だと思うです。
>>46ではスタックフレームの深さを元にうんぬんかんぬんとか、いくつかデバッグ情報を利用する処理があるけど、
そういうのがAspectJでできるかどうかはちょっと分かんなかった。
0058山崎 渉NGNG
(^^)
0059山崎 渉NGNG
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン
0060デフォルトの名無しさんNGNG
0061デフォルトの名無しさんNGNG
で、つかう人いるの?
0062デフォルトの名無しさんNGNG
J
J
J
J
J


  何でもかんでも「J」付けやがって!!!!いい加減ウンザリだ!
0063デフォルトの名無しさんNGNG
JBeef
0064デフォルトの名無しさんNGNG
>>62
JBossをどうぞ
0065デフォルトの名無しさんNGNG
>>19
そんなの結合テストでも見つかりませんよ?
0066デフォルトの名無しさんNGNG
デバッグモードでは再現しませんでした
0067デフォルトの名無しさんNGNG
もったいないので延命処置
0068デフォルトの名無しさんNGNG
パリ警視J
■ このスレッドは過去ログ倉庫に格納されています