Java IntelliJ-没有这样的实例方法

Java IntelliJ-没有这样的实例方法,java,scala,intellij-idea,Java,Scala,Intellij Idea,使用IntelliJ的12 Ultimate,我在调试器中运行以下代码: Java import play.api.libs.json.JsValue; public class Foo { ... public JsValue toJson() { ... } public class FooExample { ... Foo foo = new Foo(); System.out.println("...); //<-- breakpoint import play

使用IntelliJ的12 Ultimate,我在调试器中运行以下代码:

Java

import play.api.libs.json.JsValue;
public class Foo { 
 ...
 public JsValue toJson() { ... }

public class FooExample {
...
  Foo foo = new Foo(); 
  System.out.println("...); //<-- breakpoint
import play.api.libs.json.JsValue;
公共类Foo{
...
公共JsValue toJson(){…}
公共类示例{
...
Foo-Foo=新的Foo();
System.out.println(“…);//编辑

在OP修改问题后(即,将断点移动到实际位置),我的答案不再有效


在执行该行之前会命中断点。因此,在这种情况下,
foo
尚未声明或实例化(即,
foo
构造函数尚未调用)。您需要将断点放在下一行(或跨当前行)如果要评估
foo

我在调试时在IntelliJ 2017.1.3中有相同的异常消息

当我试图为实例而不是类访问一个不存在的方法时,就会发生这种情况

常见示例:如果在调试时忘记将代码部署到服务器,并且类有一个新方法,则不能监视新成员,也不能评估新方法


尊敬。

在调试会话期间,我试图调用计算表达式窗口中的
org.jdbi.v3.core.result.ResultIterable#one
时遇到了这个问题。 IntelliJ显示了以下错误消息

没有这样的实例方法:“one”

当我没有附加调试程序时,代码运行正常

结果是IntelliJ中我的项目语言级别没有正确设置(可以在项目设置->项目下设置)

one
方法在接口中实现为。 我的
JAVA_HOME
已正确设置为JDK 12,但项目语言级别设置为6。
将项目语言级别调整到12级后,错误消失了,我可以逐步完成该方法。

谢谢你,Mark。我意识到你的解决方案是正确的,但我已经跳过了我的
Foo
实例化。我更新了我的问题,就像我跳过了原始断点一样。