【问题标题】:error: cannot find symbol. Running java class with packages through cmd错误:找不到符号。通过 cmd 运行带有包的 java 类
【发布时间】:2016-04-12 06:35:08
【问题描述】:

我有一个 java 应用程序Test。在这里面我有两个java文件。 A.java:

import javax.servlet.GenericServlet;

public class A
{
    GenericServlet inter;
}

为了编译这个,我使用了:

javac -cp servlet-api.jar A.java

编译成功。 现在另一个java文件是B.java:

import javax.servlet.GenericServlet;

public class B
{
    GenericServlet inter;
    A a = new A();
}

当我尝试使用时:

javac -cp servlet-api.jar B.java

我收到以下错误:

error: cannot find symbol.
A a = new A();
^
Symbol: class A
location: class B

P.S:请忽略所涉及的类和 jar 文件的名称,因为它仅用于演示目的。

【问题讨论】:

  • 使用合适的 IDE 和/或像 gradle 这样的构建工具。不必每次都手动输入构建命令会省去很多麻烦。

标签: java package


【解决方案1】:

使用

javac -cp x.jar;. B.java

要将当前目录包含在类路径中,那么它应该可以工作。

【讨论】:

    【解决方案2】:

    当类路径中没有该类时,通常会出现找不到符号错误。您可以通过在类路径中添加 A.class 的路径来解决此问题

    示例 javac -cp servlet-api.jar; B.java

    【讨论】:

      【解决方案3】:

      使用命令: javac -cp x.jar A.java B.java 在类路径中包含当前目录,那么它应该可以工作。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-11-17
        • 2011-07-18
        • 2016-02-01
        • 1970-01-01
        • 2013-05-20
        • 2013-12-06
        • 2016-07-22
        相关资源
        最近更新 更多