In the previous chapter, we looked at several security changes to the JDK. Java's security enhancements provide developers with the ability to write and maintain applications that implement security. More specifically, we covered datagram transport layer security, keystores, improving security application performance, the TLS ALPN, leveraging CPU instructions for GHASH and RSA, OCSP stapling for TLS, and DRBG-based SecureRandom implementations.
In this chapter, we will explore several changes to the modern Java platform with the common theme of command-line flags. More specifically, we will cover the following concepts:
- Unified JVM logging
- Compiler control
- Diagnostic commands
- The heap profiling agent
- Removing your JHAT
- Command-line flag argument validation
- Compiling for older platform versions
- The experimental Java-based JIT compiler