得到一个对象的大小当我尝试运行Java程序(java -javaagent:size.jar ObjectSizeTest
)我得到以下错误:“未能加载倍美类清单属性”试图用java剂
Failed to load Premain-Class manifest attribute from D:\workspace\ObjectSizeTest\size.jar
Error occurred during initialization of VM
agent library failed to init: instrument
这里是ObjectSizeTest代码:
public class ObjectSizeTest {
public static void main(String[] args) {
String s = new String("sai");
System.out.println(ObjectSizeFetcher.getObjectSize(s));
}
}
MANIFEST.MF(用于size.jar):
Manifest-Version: 1.0
Created-By: 1.5.0_18 (Sun Microsystems Inc.)
Premain-Class: ObjectSizeFetcher
这里为O bjectSizeFetcher的代码:
import java.lang.instrument.Instrumentation;
public class ObjectSizeFetcher {
private static Instrumentation instrumentation;
public static void premain(String args, Instrumentation inst) {
instrumentation = inst;
}
public static long getObjectSize(Object o) {
return instrumentation.getObjectSize(o);
}
}
您会收到以下错误......还有......? (你没有问过问。) – JasCav 2010-02-15 14:32:11
size.jar的源代码在哪里?我想我们需要那些。 – rochb 2010-02-15 14:33:23
您可以发布Manifest文件吗?我认为您的Premain-Class在清单文件中没有完全限定,或者无法找到该类。 – 2010-02-15 14:34:40