2
MethodEntryRequest
を作成していますが、このリクエストを2つのクラスパターンのメソッドにのみ適用したいとします。例:"java.*"
と"sun.*"
そのために私は次のコードを書いていました。複数クラスのクラスフィルタを適用する
MethodEntryRequest menr = mgr.createMethodEntryRequest();
menr.setSuspendPolicy(EventRequest.SUSPEND_ALL);
menr.addClassFilter("java.*|sun.*");
上記のコードの問題は、すべてのメソッドイベントを無効にすることです。しかし、クラスパターンメソッドを1つしか適用しないと、正常に動作しています。 "|"
を"\\\\|"
でエスケープしようとしましたが、動作しませんでした。クラスフィルタを複数のクラスパターンに適用する方法を知りたいですか?
あなたの答えはうまくいかなかった。私はあなたが例と受け入れ可能なものを意味するのか理解できませんでした。 – rainyday
"java。*"の代わりに "(java)。*"を試してみて、両方が同じではないことを知った '()'は何らかの問題を引き起こしています – rainyday
おっと!文書化されているように:_正規表現は完全一致と '' * ''で始まるか' '*''で終わるパターンに限定されます。 '' * .Foo ''や' 'java。*" '._ –