With Lombok
01 import lombok.Application;
02 import lombok.JvmAgent;
03
04 public class ApplicationExample implements Application {
05 public void runApp(final String[] args) {
06 // something
07 }
08 }
09
10 public class JVMAgentExample implements JVMAgent {
11 public void runAgent(boolean injected, String params, Instrumentation instrumentation) {
12 // something
13 }
14 }
Vanilla Java
01 public class ApplicationExample {
02 public void runApp(final String[] args) {
03 // something
04 }
05
06 public static void main(final String[] args) throws Throwable {
07 new ApplicationExample().runApp(args);
08 }
09 }
10
11 public class JVMAgentExample {
12 public void runAgent(boolean injected, String params, Instrumentation instrumentation) {
13 // something
14 }
15
16 public static void agentmain(final String params, final Instrumentation instrumentation) throws Throwable {
17 new JVMAgentExample().runAgent(true, params, instrumentation);
18 }
19
20 public static void premain(final String params, final Instrumentation instrumentation) throws Throwable {
21 new JVMAgentExample().runAgent(false, params, instrumentation);
22 }
23 }