繁体   English   中英

编译时,Maven找不到sun.jvm.hotspot

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM