'\" t.\" Copyright (c) 1995, 2014, Oracle and/or its affiliates. All rights reserved..\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER..\".\" This code is free software; you can redistribute it and/or modify it.\" under the terms of the GNU General Public License version 2 only, as.\" published by the Free Software Foundation..\".\" This code is distributed in the hope that it will be useful, but WITHOUT.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License.\" version 2 for more details (a copy is included in the LICENSE file that.\" accompanied this code)..\".\" You should have received a copy of the GNU General Public License version.\" 2 along with this work; if not, write to the Free Software Foundation,.\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA..\".\" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.\" or visit www.oracle.com if you need additional information or have any.\" questions..\".\" Title: jdb.\" Language: Japanese.\" Date: 2013ǯ11��21��.\" SectDesc: ���ܥġ���.\" Software: JDK 8.\" Arch: ����.\" Part Number: E58103-01.\" Doc ID: JSSON.\".if n .pl 99999.TH "jdb" "1" "2013ǯ11��21��" "JDK 8" "���ܥġ���".\" -----------------------------------------------------------------.\" * Define some portability stuff.\" -----------------------------------------------------------------.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~.\" http://bugs.debian.org/507673.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~.ie \n(.g .ds Aq \(aq.el .ds Aq '.\" -----------------------------------------------------------------.\" * set default formatting.\" -----------------------------------------------------------------.\" disable hyphenation.nh.\" disable justification (adjust text to left margin only).ad l.\" -----------------------------------------------------------------.\" * MAIN CONTENT STARTS HERE *.\" -----------------------------------------------------------------.SH "̾��"jdb \- Java�ץ�åȥե����ࡦ�ץ�������bug�Ф���ӽ������ޤ���.SH "����".sp.if n \{\.RS 4.\}.nf\fBjdb\fR [\fIoptions\fR] [\fIclassname\fR] [\fIarguments\fR].fi.if n \{\.RE.\}.PP\fIoptions\fR.RS 4���ޥ�ɹԥ��ץ�����ץ����Ȥ��Ƥ���������.RE.PP\fIclass\fRname.RS 4�ǥХå�����ᥤ���饹��̾����.RE.PP\fIarguments\fR.RS 4class��\fBmain()\fR��åɤ��Ϥ�������.RE.SH "����".PPJava�ǥХå�(JDB)�ϡ�Java���饹�Ѥδ�ñ�ʥ��ޥ�ɹԥǥХå��Ǥ���\fBjdb\fR���ޥ�ɤȤ��Υ��ץ�����JDB��ƤӽФ��ޤ���\fBjdb\fR���ޥ�ɤϡ�JDBA (Java Platform Debugger Architecture)����Ū�˼¹Ԥ�����������ޤ��ϥ�⡼�Ȥ�Java Virtual Machine (JVM)�θ����ȥǥХå���Ԥ����Ȥ��Ǥ��ޤ���Java Platform Debugger Architecture (JDBA)(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/jpda/index\&.html)�Ȥ��Ƥ���������.SS "JDB���å����γ���".PPJDB���å����Ϥ���ˤ��͡�����ˡ������ޤ����Ǥ����ˤ˻��Ѥ����Τϡ��ǥХå����륢�ץꥱ�������Υᥤ���饹����Ѥ��ơ�JDB���鿷����JVM��ư������ˡ�Ǥ������ޥ�ɹԤǡ�\fBjava\fR���ޥ�ɤΤ�����\fBjdb\fR���ޥ�ɤ����Ϥ��ޤ������Ȥ��С����ץꥱ�������Υᥤ���饹��\fBMyClass\fR�ξ��ϡ�JDB�Ķ��ǥǥХå�����Ȥ��˼��Υ��ޥ�ɤ���Ѥ��ޤ���.sp.if n \{\.RS 4.\}.nf\fBjdb MyClass\fR.fi.if n \{\.RE.\}.PP������ˡ�ǵ�ư����ȡ�\fBjdb\fR���ޥ�ɤϡ����ꤵ�줿�ѥ�������Ѥ���2���ܤ�JVM��ƤӽФ��ޤ������ˡ����ꤵ�줿���饹������ɤ��ơ����饹�κǽ��̿���¹Ԥ�������JVM����ߤ����ޤ���.PP\fBjdb\fR���ޥ�ɤΤ⤦1�Ĥλ�����ˡ�ϡ����Ǥ˼¹����JVM��jdb����³���뤳�ȤǤ���\fBjdb\fR���ޥ�ɤ���³����VM���μ¹���˵�ư���뤿��ι�ʸ�˼����ޤ�������ϡ�����ץ��������ǥХå��ѥ饤�֥�������ɤ�����³�μ������ꤷ�ޤ���.sp.if n \{\.RS 4.\}.nf\fBjava \-agentlib:jdwp=transport=dt_socket,server=y,suspend=n MyClass\fR.fi.if n \{\.RE.\}.PP���Υ��ޥ�ɤ���Ѥ��ơ�\fBjdb\fR���ޥ�ɤ�JVM����³�Ǥ��ޤ���.sp.if n \{\.RS 4.\}.nf\fBjdb \-attach 8000\fR.fi.if n \{\.RE.\}.PP���ξ�硢\fBjdb\fR���ޥ�ɤϿ�����JVM��ư���뤫���˴�¸��JVM����³����뤿�ᡢ\fBjdb\fR���ޥ�ɹԤ�\fBMyClass\fR�����ϻ��ꤷ�ޤ���.PP�ǥХå���JVM����³����ˤ�¾�ˤ��͡�����ˡ�����ꡢ���٤�\fBjdb\fR���ޥ�ɤǥ��ݡ��Ȥ���Ƥ��ޤ�����³���ץ����ˤĤ��Ƥϡ�Java Platform Debugger Architecture�Υɥ�����ȤȤ��Ƥ���������.SS "����jdb���ޥ��".PP����Ū��\fBjdb\fR���ޥ�ɤΰ������ޤ���JDB�����ݡ��Ȥ��륳�ޥ�ɤϤ���ʳ��ˤ⤢�ꡢ������\fB\-help\fR���ץ�������Ѥ���ɽ���Ǥ��ޤ���.PPhelp�ޤ���?.RS 4\fBhelp\fR�ޤ���\fB?\fR���ޥ�ɤϡ�ǧ�����줿���ޥ�ɤΥꥹ�Ȥ˴ʷ���������դ���ɽ�����ޤ���.RE.PPrun.RS 4JDB��ư���ƥ֥졼���ݥ���Ȥ����ꤷ�����Ȥˡ�\fBrun\fR���ޥ�ɤ���Ѥ��ơ��ǥХå����륢�ץꥱ�������μ¹ԤϤǤ��ޤ���\fBrun\fR���ޥ�ɤϡ���¸��VM����³���Ƥ�����Ȥϰۤʤꡢ�ǥХå����륢�ץꥱ�������\fBjdb\fR���鵯ư�����Ȥ��ˤΤ��ѤǤ��ޤ���.RE.PPcont.RS 4�֥졼���ݥ���ȡ��㳰���ޤ��ϥ��ƥå¹Ԥθ�ǡ��ǥХå����륢�ץꥱ�������μ¹Ԥ��³���ޤ���.RE.PPprint.RS 4Java���֥������Ȥ���ӥץ�ߥƥ����ͤ�ɽ�����ޤ����ץ�ߥƥ��ַ����ѿ��ޤ��ϥե�����ɤξ��ˤϡ��ºݤ��ͤ����Ϥ���ޤ������֥������Ȥξ��ˤϡ�û�����������Ϥ���ޤ������֥������Ȥξܺ٤����������ˡ��õ���ˤϡ�dump���ޥ�ɤȤ��Ƥ���������.sp\fB����:\fR���������ѿ���ɽ������ˤϡ��ޤ�Ǥ��륯�饹��\fBjavac \-g\fR���ץ�������Ѥ��ƥ���ѥ��뤵��Ƥ���ɬ�פ�����ޤ���.sp\fBprint\fR���ޥ�ɤϡ����˼����褦�ʡ���åɸƽФ�����Ѥ�����Τʤɡ�¿���δ�ñ��Java���ݡ��Ȥ��ޤ���.sp.if n \{\.RS 4.\}.nf\fBprint MyClass\&.myStaticField\fR\fBprint myObj\&.myInstanceField\fR\fBprint i + j + k (i, j, k are primities and either fields or local variables)\fR\fBprint myObj\&.myMethod() (if myMethod returns a non\-null)\fR\fBprint new java\&.lang\&.String("Hello")\&.length()\fR.fi.if n \{\.RE.\}.RE.PPdump.RS 4�ץ�ߥƥ����ͤξ�硢\fBdump\fR���ޥ�ɤ�\fBprint\fR���ޥ�ɤ�Ʊ��Ǥ������֥������Ȥξ�硢\fBdump\fR���ޥ�ɤǤϡ����֥�����������������Ƥ���ƥե�����ɤθ��ߤ��ͤ����Ϥ���ޤ���static�ե�����ɤ�instance�ե�����ɤ����Ϥ���ޤ���\fBdump\fR���ޥ�ɤǤϡ�\fBprint\fR���ޥ�ɤ�Ʊ���������ݡ��Ȥ���ޤ���.RE.PPthreads.RS 4���¹���Υ���åɤ����ɽ�����ޤ�������åɤ��Ȥˡ�̾���ȸ��ߤξ��֡������¾�Υ��ޥ�ɤ˻��ѤǤ��륤��ǥå��������Ϥ���ޤ���������Ǥϡ�����åɡ�����ǥå�����4�Ǥ��ꡢ����åɤ�\fBjava\&.lang\&.Thread\fR�Υ����ǡ�����åɤ�̾����\fBmain\fR�Ǥ��ꡢ���¹���Ǥ���.sp.if n \{\.RS 4.\}.nf\fB4\&. (java\&.lang\&.Thread)0x1 main running\fR.fi.if n \{\.RE.\}.RE.PPthread.RS 4���ߤΥ���åɤˤ��륹��åɤ����ޤ���¿����\fBjdb\fR���ޥ�ɤϡ����ߤΥ���åɤ�����˴�Ť��Ƽ¹Ԥ���ޤ�������åɤϡ�threads���ޥ�ɤ�������������åɡ�����ǥå����ȤȤ�˻��ꤷ�ޤ���.RE.PPwhere.RS 4��������ꤷ�ʤ���\fBwhere\fR���ޥ�ɤ�¹Ԥ���ȡ����ߤΥ���åɤΥ����å�������פ���ޤ���\fBwhere\fR\fBall\fR���ޥ�ɤϡ����ߤΥ���åɡ����롼�פˤ��륹��åɤΥ����å��٤ƥ���פ��ޤ���\fBwhere\fR\fBthreadindex\fR���ޥ�ɤϡ����ꤵ�줿����åɤΥ����å������פ��ޤ���.sp���ߤΥ���åɤ�(�֥졼���ݥ���Ȥ�\fBsuspend\fR���ޥ�ɤˤ�ä�)���Ǥ��Ƥ�����ϡ����������ѿ��ȥե�����ɤ�\fBprint\fR���ޥ�ɤ�\fBdump\fR���ޥ�ɤ�ɽ���Ǥ��ޤ���\fBup\fR���ޥ�ɤ�\fBdown\fR���ޥ�ɤǡ��ɤΥ����å����ե졼��ߤΥ����å����ե졼��ˤ��뤫�����֤��Ȥ��Ǥ��ޤ���.RE.SS "�֥졼���ݥ����".PP�֥졼���ݥ���Ȥϡ����ֹ�ޤ��ϥ�åɤκǽ��̿���JDB������Ǥ��ޤ�����������ޤ���.sp.RS 4.ie n \{\\h'-04'\(bu\h'+03'\c.\}.el \{\.sp -1.IP \(bu 2.3.\}���ޥ��\fBstop at MyClass:22\fR�ϡ�\fBMyClass\fR���ޤޤ�륽�������ե������22���ܤκǽ��̿��˥֥졼���ݥ���Ȥ����ꤷ�ޤ���.RE.sp.RS 4.ie n \{\\h'-04'\(bu\h'+03'\c.\}.el \{\.sp -1.IP \(bu 2.3.\}���ޥ��\fBstop in java\&.lang\&.String\&.length\fR�ϡ���å�\fBjava\&.lang\&.String\&.length\fR����Ƭ�˥֥졼���ݥ���Ȥ����ꤷ�ޤ���.RE.sp.RS 4.ie n \{\\h'-04'\(bu\h'+03'\c.\}.el \{\.sp -1.IP \(bu 2.3.\}���ޥ��\fBstop in MyClass\&.<clinit>\fR�ϡ�\fB<clinit>\fR����Ѥ��ơ�\fBMyClass\fR����Ū����������ɤ����ꤷ�ޤ���.RE.PP��åɤ������С������ɤ���Ƥ�����ˤϡ���åɤΰ����η�����ꤷ�ơ��֥졼���ݥ���Ȥ��Ф���Ŭ�ڤʥ�åɤ������褦�ˤ���ɬ�פ�����ޤ������Ȥ��С�\fBMyClass\&.myMethod(int,java\&.lang\&.String)\fR�ޤ���\fBMyClass\&.myMethod()\fR�Ȼ��ꤷ�ޤ���.PP\fBclear\fR���ޥ�ɤϡ�\fBclear MyClass:45\fR�Τ褦�ʹ�ʸ����Ѥ��ƥ֥졼���ݥ���Ȥ������ޤ���\fBclear\fR����Ѥ��뤫����������ꤷ�ʤ���\fBstop\fR���ޥ�ɤ���Ѥ���ȡ��������ꤵ��Ƥ��뤹�٤ƤΥ֥졼���ݥ���Ȥ�ɽ������ޤ���\fBcont\fR���ޥ�ɤϼ¹Ԥ��³���ޤ���.SS "���ƥå¹�".PP\fBstep\fR���ޥ�ɤϡ����ߤΥ����å����ե졼��ޤ��ϸƤӽФ��줿��å���ǡ����ιԤ�¹Ԥ��ޤ���\fBnext\fR���ޥ�ɤϡ����ߤΥ����å����ե졼��μ��ιԤ�¹Ԥ��ޤ���.SS "�㳰".PP���������Ƥ��륹��åɤθƽФ������å���Τɤ��ˤ�\fBcatch\fRʸ���ʤ������㳰��ȯ������ȡ�JVM���̾�㳰�ȥ졼������Ϥ��ƽ�λ���ޤ�����������JDB�Ķ��Ǽ¹Ԥ��Ƥ�����ϡ���ȿ�Υ���������JDB�����椬���ޤ������ˡ�\fBjdb\fR���ޥ�ɤ���Ѥ����㳰�θ�������Ǥ��ޤ���.PP���Ȥ��С�\fBcatch java\&.io\&.FileNotFoundException\fR�ޤ���\fBcatch\fR\fBmypackage\&.BigTroubleException\fR�Τ褦��\fBcatch\fR���ޥ�ɤ���Ѥ���ȡ��ǥХå����줿���ץꥱ�������ϡ�¾���㳰�����������줿�Ȥ�����ߤ��ޤ����㳰������Υ��饹�ޤ��ϥ��֥��饹�Υ����ξ��ϡ����ץꥱ���������㳰�����������줿������ߤ��ޤ���.PP\fBignore\fR���ޥ�ɤ���Ѥ���ȡ�������\fBcatch\fR���ޥ�ɤθ��̤�̵���ˤʤ�ޤ���\fBignore\fR���ޥ�ɤǤϡ��ǥХå������JVM��������㳰��̵�뤻�����ǥХå��Τߤ�̵�뤷�ޤ���.SH "���ץ����".PP���ޥ�ɹԤ�\fBjava\fR���ޥ�ɤΤ�����\fBjdb\fR���ޥ�ɤ���Ѥ����硢\fBjdb\fR���ޥ�ɤϡ�\fB\-D\fR��\fB\-classpath\fR��\fB\-X\fR�ʤɡ�\fBjava\fR���ޥ�ɤ�Ʊ�����Υ��ץ������������ޤ���\fBjdb\fR���ޥ�ɤϡ�����¾�˼��Υꥹ�Ȥˤ��륪�ץ������������ޤ���.PP�ǥХå���Ԥ�JVM�˥ǥХå�����³���뤿������ص��������뤿��ˡ�����¾�Υ��ץ�����ݡ��Ȥ���Ƥ��ޤ�����������³�����ؤ˴ؤ���ܺ٤ʥɥ�����Ȥϡ�Java Platform Debugger Architecture (JPDA)(http://docs\&.oracle\&.com/javase/8/docs/technotes/guides/jpda/index\&.html)�Ȥ��Ƥ�������.PP\-help.RS 4�إ�ס���å�������ɽ�����ޤ���.RE.PP\-sourcepath \fIdir1:dir2: \&. \&. \&.\fR.RS 4���ꤵ�줿�ѥ�����Ѥ��ơ����������ե���������ޤ������Υ��ץ�����ꤵ��Ƥ��ʤ����ϡ��ǥե���ȡ��ѥ��Υɥå�(\&.)�����Ѥ���ޤ���.RE.PP\-attach \fIaddress\fR.RS 4�ǥե���Ȥ���³��������Ѥ��ơ��¹����JVM�˥ǥХå�����³���ޤ���.RE.PP\-listen \fIaddress\fR.RS 4�¹����JVM��ɸ��Υ��ͥ�������Ѥ��ƻ��ꤵ�줿���ɥ쥹����³����Τ��Ե����ޤ���.RE.PP\-launch.RS 4�ǥХå����륢�ץꥱ��������JDB�ε�ư�夿�����˵�ư���ޤ���\fB\-launch\fR���ץ����ˤ�ꡢ\fBrun\fR���ޥ�ɤ�ɬ�פʤ��ʤ�ޤ����ǥХå����륢�ץꥱ�������ϡ���ư�塢������ץꥱ��������饹�������ɤ����ľ������ߤ��ޤ������λ����ǡ�ɬ�פʥ֥졼���ݥ���Ȥ����ꤷ��\fBcont\fR���ޥ�ɤ���Ѥ��Ƽ¹Ԥ��³�Ǥ��ޤ���.RE.PP\-listconnectors.RS 4����JVM�����ѤǤ��륳�ͥ��������ɽ�����ޤ���.RE.PP\-connect connector\-name:\fIname1=value1\fR.RS 4����ɽ�����줿�������ͤȻ���Υ��ͥ�������Ѥ��ƥ������å�JVM����³���ޤ���.RE.PP\-dbgtrace [\fIflags\fR].RS 4\fBjdb\fR���ޥ�ɤΥǥХå��ξ������Ϥ��ޤ���.RE.PP\-tclient.RS 4Java HotSpot VM���饤�������ǥ��ץꥱ��������¹Ԥ��ޤ���.RE.PP\-tserver.RS 4Java HotSpot VM�����С���ǥ��ץꥱ��������¹Ԥ��ޤ���.RE.PP\-J\fIoption\fR.RS 4JVM��\fBoption\fR���Ϥ��ޤ���option�ˤϡ�Java���ץꥱ�������ư�ġ���Υ�ե�����ڡ����˵��ܤ���Ƥ��륪�ץ�����1�Ļ��ꤷ�ޤ������Ȥ��С�\fB\-J\-Xms48m\fR�Ȼ��ꤹ��ȡ��������ȥ��åס������48MB�����ꤵ��ޤ���java(1)�Ȥ��Ƥ���������.RE.SH "�ǥХå����ץ�������ž������륪�ץ����".PP\-v \-verbose[:\fIclass\fR|gc|jni].RS 4��Ĺ�⡼�ɤˤ��ޤ���.RE.PP\-D\fIname\fR=\fIvalue\fR.RS 4�����ƥࡦ�ץ��ѥƥ������ꤷ�ޤ���.RE.PP\-classpath \fIdir\fR.RS 4���饹�����뤿��Ρ�������Ƕ��ڤäƻ��ꤵ�줿�ǥ��쥯�ȥ�Υꥹ�ȡ�.RE.PP\-X\fIoption\fR.RS 4��ɸ�ॿ�����å�JVM���ץ����Ǥ���.RE.SH "��Ϣ����".sp.RS 4.ie n \{\\h'-04'\(bu\h'+03'\c.\}.el \{\.sp -1.IP \(bu 2.3.\}javac(1).RE.sp.RS 4.ie n \{\\h'-04'\(bu\h'+03'\c.\}.el \{\.sp -1.IP \(bu 2.3.\}java(1).RE.sp.RS 4.ie n \{\\h'-04'\(bu\h'+03'\c.\}.el \{\.sp -1.IP \(bu 2.3.\}javah(1).RE.sp.RS 4.ie n \{\\h'-04'\(bu\h'+03'\c.\}.el \{\.sp -1.IP \(bu 2.3.\}javap(1).RE.br'pl 8.5i'bp