3
我有一些帶自定義Java註釋的Scala代碼...用於監視目的(JMX和ModelMBeanOperationInfo)我想將MethodSymbol轉換爲Java方法。 僅供參考,這是我的代碼來檢索Scala的符號,我的註解的方法:從reflect.runtime.universe.MethodSymbol獲取java.lang.reflect.Method
val jmxannotation = ru.typeOf[EnableForMonitoring]
val m = runtimeMirror(getClass.getClassLoader)
val mSymbol = m.classSymbol(jmxe.getClass)
val mType = mSymbol.selfType
mType.declarations.foreach(symbol => {
symbol.annotations.find(a => a.tpe == jmxannotation) match {
case Some(_) => {
info(s"(A) For $symbol on $jmxe, annotated for monitoring")
val ms = symbol.asMethod
// TODO: HOW TO CONVERT ms to a Java Method
}
case None =>
}
})
感謝。
謝謝尤金。奇蹟般有效。 – jts