java - 无法调试 Lambda 表达式 IntelliJ Ultimate 2018.1
问题描述
我在调试模式下运行 Junit 测试用例,它适用于正常的方法调用。当我尝试调试 lambda 表达式时,控制不会进入内部。
我尝试安装 Java Stream Debugger,但尚未扩展对 IntelliJ Ultimate 2018.1 IDE 的支持
public TestLambda lambdaExpression() {
int width=10;
TestLambda d2;
//with lambda
return d2=()->{
System.out.println("Drawing "+width);
System.out.println("Drawing1 "+width);
System.out.println("Drawing2 "+width);
};
}
我希望调试器指向每个 sysout 语句。我可以使用 Eclipse 调试相同的表达式。
解决方案
根据评论,我更新了代码并且效果很好。我的实际问题与通过 spring 进行的 Bean 初始化有关,因此配置文件中没有写入任何执行。因此调试器没有进入内部。
更新代码:
public void lambdaExpression() {
int width=10;
//with lambda
TestLambda d2=()->{
System.out.println("Drawing "+width);
System.out.println("Drawing "+width);
System.out.println("Drawing "+width);
};
d2.draw();
}
推荐阅读
- javascript - 当使用 CSS 找不到图像时,是否可以为每页定义一个全局“断开链接”图像?
- wordpress - 如何从树枝/木材文件中获取子类别名称?
- javascript - 反应组件正在传递 useState 的默认值,而不是传递 API 数据
- c++ - C ++中正确的球体碰撞分辨率
- swift - SwiftUI 中的嵌套过渡/动画
- python - 如何在 for 循环(python)中重置增量变量?
- regex - 正则表达式 ”?!” 有变量
- gekko - 为什么 12 秒后 MHE 对我的模型持怀疑态度?
- java - 如何将点表示法 JsonObject 转换为 Java 中的嵌套 JsonObject?
- java - 如何在java中创建一个泛型类的实例?