Java smack库中对PacketWriter的JNI全局引用,如何确定JNI全局引用的原因?

Java smack库中对PacketWriter的JNI全局引用,如何确定JNI全局引用的原因?,java,debugging,memory-leaks,garbage-collection,java-native-interface,Java,Debugging,Memory Leaks,Garbage Collection,Java Native Interface,我正在使用smack库连接到Facebook XMPP服务器 在我的本地环境调试模式下,有时会发生内存泄漏。我有: 检查了堆转储 发现JNI全局引用始终引用smack库中的PacketWriter对象 PacketWriter包含一个执行输出工作的线程 问题: 是什么导致了JNI全局引用?(当然,服务器中没有使用JNI) JNI Glabal引用是由服务器的调试模式引起的吗 我已经检查了问题: 是smack源代码视图: 更新 堆转储非常大,我发布了VisualVM关于堆的屏幕截图 您能将堆转

我正在使用smack库连接到Facebook XMPP服务器

在我的本地环境调试模式下,有时会发生内存泄漏。我有:

  • 检查了堆转储
  • 发现JNI全局引用始终引用smack库中的PacketWriter对象
  • PacketWriter包含一个执行输出工作的线程
问题: 是什么导致了JNI全局引用?(当然,服务器中没有使用JNI)

JNI Glabal引用是由服务器的调试模式引起的吗

我已经检查了问题:

是smack源代码视图:

更新 堆转储非常大,我发布了VisualVM关于堆的屏幕截图

您能将堆转储发布到某个地方吗?可能是