我正在面试一名高级 Java 职位的候选人,他提到他们广泛使用 scala 命令提示符来调试 Java 程序。他说甚至可以直接从 scala 命令提示符调用 Java 函数。
我从来没有用过scala所以我无法验证他的评论。这可能是因为它们都在 JVM 本身上运行。
快速谷歌搜索没有给出任何指示。
是否真的可以从 scala 中调试 Java 函数。有人可以给我指点吗。
提前致谢。
最佳答案
是的,你可以,尽管你必须使用 scala 语法:
:: ~ » scala
Welcome to Scala version 2.10.4 (Java HotSpot(TM) 64-Bit Server VM, Java 1.7.0_25).
Type in expressions to have them evaluated.
Type :help for more information.
scala> val x = new java.io.File("/tmp/foo")
x: java.io.File = /tmp/foo
scala> x.length
res0: Long = 24777
这里我使用了与 scala 发行版捆绑在一起的 scala REPL,但实际上,您可以使用 sbt(scala 模拟 maven)命令,因此所有项目类都可以在类路径上立即使用:
sbt
console
.... // using java code, just like any other jvm code
出于同样的目的,可以使用 vanila REPL,但是你必须手动重建类路径:
scala -classpath ...
是的,正如@Boris 在评论中提到的,IDE(originally Eclipse,但是now IDEA too)有它自己的方式来实现这个功能——内置交互式工作表(必须安装相关插件):
关于java - 我们可以使用scala来调试Java程序吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23731715/