当前位置: 首页 > 面试题库 >

“找不到符号”错误-即使是一个非常简单的示例

轩辕经赋
2023-03-14
问题内容

因此,我已经尝试解决这个问题已有几个小时了。我搜寻了互联网,搜寻了StackOverflow,我问了一些同事(我是实习生),老实说,没人能告诉我发生了什么!我整理了一个非常简单的示例,向您展示我在做什么(即使使用简单示例,也会出现错误)

我有两个.java文件。一个就是Test.java另一个testClass.java

//testClass.java

package test;

public class testClass {
    private int someMember=0;

    public testClass(){
        //kill me now
    }

}

然后,我有包含主要方法的Test.java文件。(尽管在我真正的问题中,我没有主要方法-它是带有doGet()方法的servlet )

//Test.java
package test;

public class Test {

    public static void main(String[] args) {
        testClass myTest = new testClass();
    }
}

我正在使用以下内容进行编译(从Windows命令行,使用保存我的.java文件的当前目录):

..java bin location..\javac testClass.java

这绝对正常,我在当前目录中得到一个testClass.class文件。然后,我尝试使用以下内容(同样在工作目录中)编译Test.java文件:

..java bin location..\javac -classpath . Test.java

这将导致以下错误:

Test.java:6: cannot find symbol
symbol : class testClass
location : class test.testClass
   testClass myTest = new testClass();

你能帮一个兄弟吗?:(


问题答案:

您的类在一个包中,并且Java会在假定该包结构的情况下查找类-但是javac不会为您 构建 该结构,除非您告知它;否则,它将不再为您 构建
该结构。通常会将类文件放在Java文件的旁边。

选项:

  • 将源文件放在test目录中,然后编译test\Test.javatest\testClass.java
  • 指定-d .何时编译,以强制javac构建包结构。

使用IDE(Eclipse,IntelliJ等)往往会鼓励甚至强迫您将文件放在正确的目录中,并且通常也使构建代码更容易。



 类似资料:
  • 我用CodeNameOne创建了一个简单的示例应用程序,没有任何更改。证书和设置文件可用,并配置为项目属性。 IDE:Eclipse桌面操作系统:Windows 执行“发送IOS调试构建”启动服务器构建,并显示以下错误: /var/folders/p7/d3z112yd0156kxkm2p21p8ym0000gn/T/build5327647990993852705xxx/存根/TestBuild

  • 这里有一个类似的答案:如何在Java中将函数作为参数传递? 但提供的正确答案不起作用。我有一门课: 在函数内部我试图将传递到,但我得到的错误是: 找不到符号 符号:类Callable 我不知道为什么。 另外,我尝试使用返回类型字符串作为xMethod,您能传递一个返回类型不同的函数吗?

  • 问题内容: 我正在尝试了解@AutoValue。我遵循https://github.com/google/auto/blob/master/value/userguide/index.md中的示例 我正在使用Android Studio 3.4 我添加我的gradle依赖 我也在用 和 我的代码如下 和 当我运行测试时,它会出错 我错过了什么? 在https://github.com/elye/i

  • 问题内容: 我使用时代码工作正常 吗?在我看来这很奇怪。 (错误显示在终端上) 问题答案: 这是 Arrays 类的静态方法。 您应该像这样调用它: 请注意,您仍然必须像这样导入Arrays类: 或者像其他人提到的那样,如果您进行静态导入,则可以省略类名。 我认为这样做对可读性更好。

  • (菜鸟失误,我确定。) 我是计算机科学专业的一年级学生,正在尝试用代码编写作业程序; 但是在编译时,我得到了错误; Lab10Ex1.java:10: 错误: 找不到符号 System.out.print(n 1);^ 符号:变量n 位置: 班级 Lab10Ex1 如果有人能向我解释我做错了什么,或者如何纠正它,我会非常感激。

  • 我有一个问题,我试图实现一个JMenuBar,但不断得到一个不能找到符号错误。我将JFrame与main方法一起放在一个单独的类中,JFrame将安装MainPanel类的一个对象。我在这里漏掉了什么?如有任何帮助将不胜感激,谢谢! 符号:方法setJMenuBar(JMenuBar) 位置:类主面板