我有一个运行中的具有已知PID的JVM实例。
鉴于正在使用一些UNNAMED模块,是否有任何明智的方法可以从外部找出该JVM实例当前正在加载哪些命名的JPMS模块?
我认为可以通过处理jcmd <pid> VM.class_hierarchy
的输出来实现,但是对于Java9 +时代中的一个简单而逻辑的问题,肯定会做很多工作。
编译时或运行时环境中内置的模块,以及由模块路径上的工件定义的模块,统称为可观察模块的范围。
因此,如果要全部list observable modules
,则可以使用
java --list-modules
列出可观察的模块,然后退出。