2017-11-29 4 views
0

Ich versuche, einen grundlegenden Java-Agenten auszuführen.Fehler beim Ausführen des Java-Agenten

Ich folgte:

How to put classes for javaagent in the classpath

Aber ich erhalte diesen Fehler

Failed to find Premain-Class manifest attribute in target/demo.jar 
Error occurred during initialization of VM 
agent library failed to init: instrument 

Hier mein Agent

package com.example.demo; 

import java.lang.instrument.Instrumentation; 

public class DriftDetector { 

    private static Instrumentation instrumentation; 

    public static void premain(String agentArgs, Instrumentation inst) { 

     System.out.println("Inside premain"); 
     instrumentation = inst; 
    } 

    public static long getObjectSize(Object o) { 
     return instrumentation.getObjectSize(o); 
    } 
} 

Mein manifest.mf (innen META-INF ist)

und meine Hauptklasse

package com.example.demo; 
import static com.example.demo.DriftDetector.getObjectSize; 

public class DemoApplication { 

    public static void main(String[] args) { 
     System.out.println("Size of Long: " + getObjectSize(new Long(1L))); 
    } 
} 

Befehl jar erstellen

mvn package 

Befehl

java -javaagent:target/demo.jar -jar target/demo.jar 

Antwort

0

Wahrscheinlich Fehler zu laufen ist in Ihrem manifest.mf

Manifest-Version: 1.0 Premain-Klasse: DriftDetector

Tty wie dies seine Werke für mich

Verwandte Themen