2012-09-12 19 views
2

OQL有可能檢索屬於包的所有對象嗎?或者我可以用wildcards查詢嗎?OQL包中的所有實例

由於@haridsv建議我嘗試:

SELECT * from "com.example.*" 

SELECT a from "com\.example\..*" 

,但沒有這樣的包是否存在VisualVM它的投訴。

即使

SELECT a from "java.io.File" a 

失敗。

謝謝!

ssedano。

+0

在jvisualvm它似乎你需要寫入SELECT使用小寫字母,即「選擇」。 – user1050755

回答

5

我在VisualVM OQL help找到答案。

select filter(heap.classes(), "/com.example./(it.name)") 
+1

:2 TypeError:/java.awt./不是函數 – Trejkaz

4

您可以使用正則表達式是這樣的:

SELECT * from "<packagename>.*" 

如果軟件包名稱是「java.io」你會用:

SELECT * from "java\.io\..*" 

注意周圍的正則表達式的報價以及如何點在路徑中被保護。

+0

在visualvm中使用OQL控制檯這些選擇不起作用。但謝謝你的回答! – ssedano

+3

我建議OQL for Eclipse MAT,因爲VisualVM的OQL語法完全不同。如果我錯過了要清楚瞭解您的要求,我很抱歉。 – haridsv

+0

哎呀,也許這個問題還不夠清楚 – ssedano