我有一个Spring MVC项目,我正在尝试使用IntelliJ进行调试。
如果在控制器代码中设置了断点,则调试将在适当的位置停止。该特定行在另一个bean中具有更多我自己的代码。我希望能够进入代码。如果在断点触发之后立即“进入”,它将进入Spring的AOP框架代码。
如果我立即触发相同的断点并“明智地进入”,它将使我进入源文件的第-1行(在上图中明显)。这行-1表示什么?如果我再次执行“智能介入”,则最终会到达原始断点之后的行,但从来没有被放入要介入的方法内。
我已经尝试过将Spring AOP包放入Debugger设置中。不要踏入类。但是,我最终还不得不放入事务类以及其他几个事务类。最后,我将所有Spring放入列表...以及SLF4J和一些JDBC驱动程序。
除非我使用“强制进入”之类的方法,否则如何才能使IntelliJ仅停止在项目源代码中?
Do not step into classes
设置中,您可以使用通配符声明模式。假设您的软件包不是以org.*
和com.*
开头的,则这可能有助于快速排除诸如和的软件包。能够!
在这些模式中使用负号()将是一个完美的解决方案-我建议将其作为功能请求发送。