CDI Weld 和 AspectJ - org.jboss.weld.exceptions.UnproxyableResolutionException
使用 AspectJ 和 CDI 时出现此错误。
org.jboss.weld.exceptions.UnproxyableResolutionException: WELD-001437 普通作用域 bean 类 myPackageName.myClassName 不是 可代理,因为类型是最终的或 它包含一个静态的最终方法 最终 java.lang.String myPackageName.myClassName.myMethodName_aroundBody0(myPackageName.myClassName.,org.aspectj.lang.JoinPoint)。
如果我删除 AspectJ 它可以工作,但我不希望这样。请帮忙。
I get this error when using AspectJ and CDI.
org.jboss.weld.exceptions.UnproxyableResolutionException:
WELD-001437 Normal scoped bean class
myPackageName.myClassName is not
proxyable because the type is final or
it contains a final method static
final java.lang.String
myPackageName.myClassName.myMethodName_aroundBody0(myPackageName.myClassName.,org.aspectj.lang.JoinPoint).
If I remove AspectJ it works, but I don't want that. Please Help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我从 AspectJ 的邮件列表中得到了答案,他们建议添加一个编译时标志(如果方法应该是最终的或不是最终的),作为解决方法。谢谢。
I got an answer from AspectJ's mailing list, they proposed adding a compile time flag if the method should be final or not, as a workaround. Thanks.