VisualVM 1.3.8 OQL — TypeError: [RegExp /java.lang./] не является функцией

При выполнении ниже OQL выдает TypeError: [RegExp /java.lang./] не является функцией

select filter(heap.classes(), "/java.lang./(it.name)") 

Должно ли это работать? См. OQL для всех экземпляров из пакета

Кроме того, могу ли я узнать, является ли OQL «стандартом» для анализа дампа кучи?


person Lewis Wong    schedule 13.11.2014    source источник


Ответы (1)


Кажется, что:

select filter(heap.classes(), "/java.lang./.exec(it.name)") 

работает. Мой OQL-foo не так силен, но я рискну предположить, что он связан с Регулярное выражение ошибки Javascript не является функцией?.

Обновлять

Кажется, я могу воспроизвести проблему на Java 8 (которая использует Nashorn), но не на Java 7 или ниже (которая использует Rhino). Это имеет смысл, так как Nashorn реализует поведение ES5, где RegExp не является функцией, тогда как Rhino реализует старое поведение Mozilla, где оно.

person James_pic    schedule 20.07.2015