在OQL下面执行时,它给出了TypeError: RegExp /java.lang./不是一个函数
select filter(heap.classes(), "/java.lang./(it.name)") 这能行吗?请参阅OQL all instances from a package
另外,我可以知道OQL是否是分析堆转储的“标准”吗?
发布于 2015-07-20 10:54:29
看来:
select filter(heap.classes(), "/java.lang./.exec(it.name)") 很管用。我的OQL没有那么强,但我敢猜测它与Javascript error regex not a function?有关。
更新
我似乎能够在Java 8(它使用Nashorn)上重现这个问题,但在Java 7或更低版本(它使用Rhino)上却不能再现这个问题。这是有意义的,因为Nashorn实现了ES5行为,其中RegExp不是一个函数,而Rhino实现了旧的Mozilla行为,它在哪里。
https://stackoverflow.com/questions/26906075
复制相似问题