【问题标题】:javac fails with symbol not foundjavac 失败,找不到符号
【发布时间】:2014-03-14 04:58:03
【问题描述】:

这是我的文件夹结构:

- myGame/
  - bin/
  - src/
     - common/
     - logic/
     - main/
     - messageprotocol/
     - test/
     - util/
         - Test.java
         - Rectangle.java
         - Geometry.java

我想编译 util 包中的 Test.java。但是,我得到 symbol not found 错误,我猜 javac 命令是错误的。此外,您应该知道 Test.java 引用了同一项目 (myGame) 中的其他类。

这是我的工作:

cd myGame/
javac -d bin -classpath bin src/util/Test.java

一旦我完成了上述操作,我会这样做并且它会起作用(我希望):

cd myGame/bin
java Test

我已阅读大量资源并尝试申请,但它不适用于我的文件夹结构。我做错了什么?

编辑:我收到的错误是:

myGame/src/util/Test.java:16: cannot find symbol
symbol  : class Rectangle
location: class util.Test
  private static final Rectangle[] rectangles = new Rectangle[someNumber];
                       ^
myGame/src/util/Test.java:16: cannot find symbol
symbol  : class Rectangle
location: class util.Test
  private static final Rectangle[] rectangles = new Rectangle[someNumber];
                                                          ^
myGame/src/util/Test.java:20: cannot find symbol
symbol  : variable Geometry
location: class util.Test
    System.out.println("Printing " + Geometry.NUMBER);
                                                      ^
myGame/src/util/Test.java:24: cannot find symbol
symbol  : variable Geometry
location: class util.Test
      serverSocket = new Circle(Geometry.NUMBER);
                                      ^
myGame/src/util/Test.java:36: cannot find symbol
symbol  : class Rectangle
location: class util.Test
            rectangles[i] = new Rectangle(number, rectangles);
                                   ^
5 errors

【问题讨论】:

    标签: java compiler-construction compilation compiler-errors javac


    【解决方案1】:

    Test.java 的包结构是 util.Test,所以你应该这样做:

    cd myGame/src
    javac -d ../bin -classpath ../bin util/Test.java
    

    然后尝试运行它。希望这会有所帮助。

    【讨论】:

    • 我仍然遇到同样的错误。实际上这个命令给出了更多的错误,因为你在错误的地址中提到了 bin 文件夹,它是上一级的。但即使我解决了这个问题,错误也不会消失。
    • 我更新了 bin 的路径。您是否也更新了类路径中的 bin 文件夹路径?
    • 是的,我做到了。 -d 和 -classpath。
    • 我已经更新了错误信息和文件夹结构,请检查。谢谢!
    • 这表明您没有导入所需的包。请同时发布 Test.java
    猜你喜欢
    • 1970-01-01
    • 2018-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-30
    • 2023-04-09
    • 2017-10-13
    • 1970-01-01
    相关资源
    最近更新 更多