Target 探針物件是指定要套用探針的類別和方法。
Target 物件可視需要選擇使用。如果未指定 Target,探針將套用到由插入程序引擎所處理的所有類別。
Target 物件可讓您建立過濾規則,根據比對套件、類別和方法名稱,以及方法簽章的型樣來併入或排除要插入的方法。型樣可以包含萬用字元,"*" 表示符合零或多個字元。
如果 Target 的萬用字元型樣符合方法的套件、類別、名稱和簽章,type 內容會決定是(併入)否(排除)要在方法中進行插入。如果型樣不符合方法的套件、類別、名稱和簽章,依預設會在方法中進行插入。
內容 | 說明 |
---|---|
type | 必要。type 內容決定是否要套用探針到目標方法。指定 include 可套用探針到符合萬用字元型樣的類別和方法,exclude 則會排除。 |
package | 可視需要選擇使用。指定符合類別名稱的套件部分的萬用字元型樣。例如:java.util* 可符合 java.util 套件與其子套件中的每一個類別。如果未指定,預設值為 *。 |
className | 可視需要選擇使用。指定符合類別名稱的萬用字元型樣。如果未指定,預設值為 *。 |
method | 可視需要選擇使用。指定符合方法名稱的萬用字元型樣。如果未指定,預設值為 *。 |
signature | 可視需要選擇使用。指定符合方法的簽章的萬用字元型樣 - 亦即,代表方法的引數和傳回類型的字串。這是方法簽章的 Java 內部格式。例如:(Ljava/lang/Object;)D 是以 Object 為參數並傳回 double 之方法的簽章。這個萬用字元型樣可以用來區分各個超載方法。如果未指定,預設值為 *。 |
附註:
<target type="include" package="." class="SomeClass" method="*" /> <target type="exclude" package="*" class="*" method="*" />這兩個目標規則會使探針以廣域套件中的 SomeClass 類別為目標,而排除所有其他類別。這些規則會排除任何其他套件中名稱為 SomeClass 的類別。
<target type="include" package="com.example" className="*Proxy" method="Get*" />
內含於
Probe 物件
上層主題: Probekit 元素參照