“This is the third day of my participation in the Gwen Challenge in November. Check out the details: The last Gwen Challenge in 2021.”

Hello, I’m looking at the mountains.

The Java pit is so large that it needs to be filled in slowly.

This article is to list some tools that come with the JDK. At least know what tools are out there before you can actually use them.

This article refers to the official introduction and the introduction of the native MAN command.

1. Standard tools

These tools are provided by the JDK, and are usually long-supported tools that the JDK promises to be useful. There may be differences between systems and versions, but it’s not like a tool suddenly disappears.

1.1 Basics (AppletViewer, ExtCheck, JAR, Java, JavAC, Javadoc, Javah, JavAP, JDB, JDEps)

  • Appletviewer: Runs and debugs applets without a Web browser
  • Extcheck: tool for checking Jar conflicts
  • Jar: Creates and manages JAR files
  • Java: The Java runtime tool for running. Class bytecode file or. The jar file
  • Javac: A compiler for the Java programming language
  • Javadoc: API document generator
  • Javah: C header and stub function generator for writing native methods
  • Javap: Class file disassembler, mainly used to disassemble Java source code files from Java bytecode files
  • JDB: Java Debugger
  • Jdeps: Java class dependency analyzer

1.2 Security (Keytool, Jarsigner, policyTool)

  • Keytool: Manages key stores and certificates. It is used to obtain or cache Kerberos ticket authorization tickets. Allows users to view entries in the local credential cache and key table (for Kerberos negotiation). Kerberos key table management tool that allows users to manage primary names and service keys stored in local key tables.
  • Jarsigner: Generates and validates JAR signatures
  • Policytool: GUI tool for managing policy files, used to manage user policy files (.java.policy)

1.3 Internationalization/I18N (Native2ASCII)

  • Native2ascii: A native-to-ASCII Converter for converting between “any supported character encoding” and its corresponding “ASCII encoding and/or Unicode escape”.

1.4 Remote Method Invocation /RMI (RMIC, RMIRegistry, RMID, Serialver)

  • Rmic: Java RMI compiler that generates stub, skeleton, and tie classes for remote objects using the JRMP or IIOP protocols, and also for OMG IDL generation.

  • Rmiregistry: Remote object registry service for creating and starting a remote object registry on a specified port on the current host.

  • Rmid: Starts the activation system daemon that allows objects to be registered or activated in a VIRTUAL machine.

  • Serialver: Generates and returns the serialized version ID of the specified class

1.5 Java IDL and RMI-IIOP (TNAMeserV, IDLJ, ORBD, ServerTool)

  • Tnameserv: Provides access to the naming service
  • Idlj: IDL-to-Java Compiler, which generates maps to OMG IDL interfaces. Java files and enable applications written in the Java programming language that use CORBA functionality. Java file. IDL stands for Interface Definition Language.
  • Orbd: Object Request Broker Daemon, which provides the ability to locate and invoke persistent objects on the SERVER side of the CORBA environment from clients. Use ORBD instead of the transient naming service TNAMeserv. ORBD includes transient naming service and persistent naming service. The ORBD tool integrates server manager, interoperable naming service and boot name server capabilities. It can be used with ServerTool when the client wants to perform server location, registration, and activation functions.
  • Servertool: Provides an easy-to-use interface for registering, unregistering, starting and shutting down servers for applications

1.6 Java Publishing Tools (Javapackager, Pack200, unpack200)

  • Javapackager: Package and sign Java and JavaFX applications
  • Pack200: Convert JAR files into compressed pack200 files using the Java gzip compressor. Compressed compressed files are highly compressed JARS that can be deployed directly, saving bandwidth and reducing download time.
  • Unpack200: Decompress the package file generated by pack200 into a JAR file

1.7 Java Web Startup Tool (Javaws)

  • Javaws: A tool to Start Java Web Start and set various options

1.8 Troubleshooting, Analysis, Monitoring and Management (JCMD, JConsole, JMC, JVisualVM)

  • JCMD: JVM diagnostic command tool that sends diagnostic command requests to a running Java VIRTUAL machine.
  • Jconsole: A graphical tool for monitoring Java virtual machines using the JMX specification. It can monitor local and remote JVMS. It can also monitor and manage applications.
  • JMC: Java Task Control client (JMC, Java Mission Control), which contains tools for monitoring and managing Java applications without the performance overhead associated with those tools. Developers can use the JMC command to create JMC tools.
  • Jvisualvm: A graphical tool that provides detailed information about Java technology-based applications (Java applications) while running in a Java virtual machine. Java VisualVM provides memory and CPU analysis, heap dump analysis, memory leak detection, MBean access, and garbage collection.

1.9 WebService Tools (Schemagen, WSGen, WSimport, XJC)

  • Schemagen: Schema generator for XML binding, used to generate XML Schema files.
  • Wsgen: Java API for XML Web Service 2.0 that generates JAX-WS portable artifacts for JAX-WS Web Services.
  • Wsimport: Java API for XML Web Service 2.0, mainly used to generate clients from WSDL files published by the server
  • XJC: mainly used to generate Java classes based on XML Schema files.

2. Experimental tools

The so-called experimental tools are provided by the HotSpot JDK, but may suddenly become unavailable in a later version. This command is experimental and unsupported is displayed in the first line of the man command when viewing the detailed introduction of these tools. “So. The HotSpot JDK repeatedly stresses caution, but since these tools are so useful for Java performance tuning, we should study them carefully and use them sparingly.

2.1 Monitoring (JPS, JSTAT, jSTATD)

  • JPS: THE JVM Process Status Tool lists the HotSpot Java Virtual Machine Process description on the target system
  • Jstat: JVM Statistics Monitoring Tool that collects and records performance Statistics of a specified JVM process based on the specified parameters.
  • Jstatd: JVM Jstat daemon that starts an RMI server application that monitors the creation and termination of the HotSpot Java VIRTUAL machine for testing and provides an interface that allows remote monitoring tools to attach to the Java VIRTUAL machine running on the local system.

2.2 Troubleshooting (jINFO, JHAT, JMAP, JSAdebugd, and JStack)

  • Jinfo: Java Configuration Information, used to print the Configuration Information of a specified Java process, core file, or remote debugging server.
  • Jhat: The Java Heap Analysis Tool is used to analyze object information in the Java Heap memory.
  • Jmap: Java Memory Map, used to print details of shared object Memory maps or heap Memory for specified Java processes, core files, or remote debug servers.
  • Jsadebugd: A Java Serviceability Agent Debug Daemon for Java that attaches to specified Java processes, core files, or acts as a Debug server.
  • Jstack: A Stack trace tool for Java, mainly used to print stack trace information for specified Java processes, core files, or Java threads on remote debugging servers.

2.3 Script Tools (JJS, JrunScript)

  • JJS: Call to the Nashorn engine. Nashorn is a lightweight, high-performance JavaScript runtime environment based on Java.
  • Jrunscript: The Java Command Line Script shell is used to explain the execution of scripting languages such as javascript, Groovy, and Ruby.

Recommended reading

  • JDK Tools at a glance
  • No JVM tuning yet? Just do it
  • JVM garbage collection algorithm

Hello, I’m looking at the mountains. Swim in the code, play to enjoy life. If this article is helpful to you, please like, bookmark, follow. Welcome to follow the public account “Mountain Hut”, discover a different world.