[英]Maven can't find sun.jvm.hotspot when compiling
我正在尝试在我的Java程序中使用sum.jvm工具。 它允许我使用sun.jvm进行编程。*但是当我尝试编译它时(干净,安装)我得到这个:
error: package sun.jvm.hotspot.memory does not exist
基本上我使用sun.jvm引用的地方有很多这些错误。
我已经环顾四周了,到目前为止我看不到有任何人遇到这个问题...有谁知道解决这个问题?
我正在尝试创建一个Tools子类来扫描JVM中的某些字符串,我发现我需要使用sun.jvm,但现在它不会工作。
这是我的方法:
@Override
public void run() {
SystemDictionary dict = VM.getVM().getSystemDictionary();
InstanceKlass stringKlass = (InstanceKlass) dict.find("java/lang/String", null, null);
OopField valueField = (OopField) stringKlass.findField("value", "[C");
long[] stats = new long[2];
VM.getVM().getStringTable().stringsDo(s -> {
s.printValueOn(System.out);
System.out.println();
stats[0]++;
stats[1] += s.getObjectSize() + valueField.getValue(s).getObjectSize();
});
}
我正在使用Tools子类中的测试。 在我的项目中我引用sun.jvm的任何地方,当我尝试使用Maven进行干净安装时,它会出现错误。 它使用IntelliJ的内置编译器构建,但不是Maven。
我也尝试重新导入Maven,甚至重新安装IntelliJ并用全新安装进行编译。
所有sun.jvm.hotspot。*路径都会发生这种情况。
谢谢,Erouax
将$JAVA_HOME/lib/sa-jdi.jar
到CLASSPATH。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.