当我尝试在IntelliJ或Scala IDE中调试以下代码时,调试器会卡在第一行的断点上,并尝试逐步完成所有100次迭代。 IntelliJ的游标运行并不会跳过线,而eclipse也不会。关于如何处理这种情况的任何想法?
object Test extends App {
val data: Array[Int] = (0 to 100).map(i => (i+1)).toArray
println(data)
}
答案 0 :(得分:1)
在Eclipse中,看起来地图一行的断点是anonfun的应用,并且尝试介入会让你回到断点,而踩过来会让你处于专门的应用状态。
但您也可以选择堆栈帧并在那里设置断点,例如在TraversableLike.map末尾的result
处。您可以禁用第一个断点(在断点视图中)以快速到达那里。
然后步骤返回和步入将您带到newArray。
您可以通过常规方式使用javap来查看您介入的内容:
javap -p -v bin/Test\$\$anonfun\$1.class