aoqi@0: The HotSpot Serviceability Agent (SA) is a debugger for hotspot core aoqi@0: dumps and hung processes. There is a read-only JDI (Java Debugger aoqi@0: Interface) implementation on top of SA. This is part of JDK product and aoqi@0: the classes are in $JDK/tools/sa-jdi.jar. aoqi@0: aoqi@0: In addition, there are few serviceability tools in $JDK/bin, namely, aoqi@0: jstack (java stack trace tool), jmap (heap tool), jinfo (Java config aoqi@0: tool) and jsadebugd. The classes for these are also in sa-jdi.jar aoqi@0: file. sa-jdi.jar file is built along with hotspot (libjvm.so) on Solaris aoqi@0: and Linux platforms. On Windows platform, SA-JDI is not included and aoqi@0: serviceability tools do not use SA. aoqi@0: aoqi@0: Apart from these, HotSpot SA consists of a number of tools that are aoqi@0: *not* included in JDK product bits. aoqi@0: aoqi@0: The sources and makefile for all-of-SA (including non-productized stuff) aoqi@0: are under $HOTSPOT_WS/agent directory. The makefile $HOTSPOT/agent/make aoqi@0: directory and shell scripts (and batch files) are used to build and run aoqi@0: SA non-product tools. There is also documentation of SA under aoqi@0: $HOTSPOT/agent/doc directory. aoqi@0: aoqi@0: To build complete SA, you need to have Rhino Mozilla jar (js.jar) aoqi@0: version 1.5R5 under $HOTSPOT/agent/src/share/lib directory. Rhino is aoqi@0: JavaScript interpreter written in Java. Rhino is used to implement SA aoqi@0: features such as aoqi@0: aoqi@0: * SA command line debugger's JavaScript interface aoqi@0: - refer to $HOTSPOT/agent/doc/clhsdb.html aoqi@0: - refer to $HOTSPOT/agent/doc/jsdb.html aoqi@0: * SA simple object query language (SOQL) aoqi@0: - language to query Java heap. aoqi@0: aoqi@0: Rhino's "js.jar" is not included in hotspot source bundles. You need to aoqi@0: download it from http://www.mozilla.org/rhino/download.html. aoqi@0: aoqi@0: Without js.jar, $HOTSPOT/agent/make/Makefile will fail to build. But, aoqi@0: note that sa-jdi.jar containing the productized portions of SA will aoqi@0: still be built when you build hotspot JVM.