"cannot find symbol" 在终端中编译 java 文件时出错

"cannot find symbol" error when compiling java file in Terminal

在处理项目时,我尝试在终端中编译我的 java 文件,但出现错误 "cannot find symbol"。我通常在 Eclipse 的 IDE 中编译和 运行 我的代码,所以这是我第一次使用终端。当我尝试创建写在同一文件夹中的 class 实例时,似乎出现了错误。

MainPanel.java:30: error: cannot find symbol
    static Player p1 = new Player( 30, 245, 0 );
           ^
  symbol:   class Player
  location: class MainPanel

我该如何解决这个问题?谢谢!

当您的 Java 项目超过 3 个文件并且您使用外部库时,最好让您的 IDE 甚至构建工具,如 Maven (https://maven.apache.org/ ) 为您处理编译。我建议你现在切换到那些而不是手动编译。

但是现在,先尝试编译 Player 然后 MainPanel class 这样

javac Player.java MainPanel.java

或者当您有多个 class 相互依赖时,这也应该有效

javac *.java

如果您想知道问题出在哪里,那是您的 MainPanel class 使用了播放器 class,因此 Java 编译器需要编译并注意播放器class 首先才能编译 MainPanel。但是你可能还没有编译 Player class 所以编译器抛出了那个错误。