Profiling of Java application is improved in the following ways:
Java profiling is now enabled by default whenever the target application is a Java virtual machine. Previously you needed to specify a –j on option with the collect command to profile a Java application.
You can now profile a running Java application on Oracle Solaris using the Profile Running Process dialog in the Performance Analyzer. The Collector attaches to the process and records profiling data and call stacks for the JVM and the Java program.
Performance Analyzer and er_print can show Java thread names and thread groups and allows you to use them for filtering.
Profiling of JDK 8 is now supported.
See the Java profiling tutorial Chapter 3, Introduction to Java Profiling, in Oracle Solaris Studio 12.4: Performance Analyzer Tutorials .