2

Scala アプリケーションにいくつかのインストルメンテーションを追加していて、問題が発生しました。JMX を標準のオブジェクト指向の方法で使用し、MBean をトレイトとして宣言し、クラスにこの Bean を実装させると、すべてが完全に機能します。ただし、私の目標は、クラスに Bean (MBean または MXBean) としてアノテーションを付けて、インターフェースを記述する必要がないようにすることです。その理由は、次のようなことを言いたいからです。

val foo = new Counter with JMX...

ここで、JMX は foo をクラスの属性として登録する特性です。

これは可能ですか?JMX バリデーターはインターフェースを持つクラスを探しており、私が作成しないと不平を言います。実行時に何らかの形式を追加する方法はありますか?

4

1 に答える 1

0

JMX インターフェイスとクラスの並列階層を持つことが可能です。たとえば、共通のメソッドを持つ複数の JMX MBean がある場合、共通の抽象メソッドを持つ基本インターフェイスを持ち、MBean に混在できる部分的な実装を持つことができます。これで問題は解決しますか?私はそれを一度やっただけで、少しトリッキーでした。同じパッケージルールで一致する名前を厳密に観察する必要があります。

于 2012-10-04T21:10:24.567 に答える