add aop, hot reload $ annotation support