将主Guice和辅助jar文件添加到Intellij中的项目后,我无法再调试包含@Inject注释的文件。只是在我的项目中包含这两个罐而不更改我的源会产生许多警告:
“忽略匿名内部类的InnerClasses属性 (com.google.inject.internal.cglib.core。$ AbstractClassGenerator $ 1)没有附带 关联的EnclosingMethod属性。“
用于ClassEmitter,DebuggingClassWriter,EmitUtils,KeyFactory,ReflectUtils,Enhancer,MethodInterceptorGenerator,NoOp和FastClassEmitter。
我的问题 - 如何在带注释的源文件中恢复步骤调试以及如何清除这些错误?
谢谢!
答案 0 :(得分:0)
this SO问题的答案描述了Guice不玩球时要使用的一些好的调试技巧:
我发现以下两个提示对this answer:
的调试很有用如果你编写通用绑定助手,
Grapher可视化注射器。如果自定义提供程序实现 HasDependencies,它可以扩充此图表。
Binder.skipSources()可让您编写错误消息正确跟踪行号的扩展程序。
Binder.skipSources()很有用 methods和Guice仅报告通用助手的行号 方法,但你(很可能)实际上想要的行号 调用者在堆栈上升一层。