【问题标题】:My main class cannot be find or load我的主类无法找到或加载
【发布时间】:2017-04-22 08:01:13
【问题描述】:

我刚开始使用 Java 包,想先做一些简单的事情。所以我做了 2 节课,但我得到了一个错误,为什么我要创建第二节课的对象。

Error: Could not find or load class main 

我得到这个错误使用

javac *.java

这是我的代码

package person;
public class Main {


public static void main(String[] args) {
    Person p1 = new Person();
    p1.setFirstName("John");
    p1.setAge(20);
    System.out.println(p1.getAge());
}

}

二等舱

package person;
public class Person {

private String firstName;
private int age;

public Person() {
}
public void setFirstName (String n)
{
    firstName = n;
}
public void setAge(int a)
{
    age = a;
}
public int getAge()
{
    return age;
}

}

当我一个一个地编译文件时,我得到了这个错误

Error: cannot find symbol
Person p1 = new Person();

它指向 p1 之前的 Person 和 new 之后的 Person。 所有文件都在同一个文件中,所以我不知道这里有什么错误。

【问题讨论】:

标签: java package


【解决方案1】:

您没有在包含 Main 类的文件中导入 Person。

【讨论】:

    【解决方案2】:

    以下是针对您的特定用例量身定制的简短答案:

    1. 确保两个源文件位于同一目录中并且该目录名为person

    2. 确保源文件名与类名匹配;即Person 类在Person.java 中,MainMain.java 中。区分大小写很重要。

    3. 将目录切换到person的父目录。

    4. 使用以下命令编译代码:

        javac -classpath . person/*.java
      

      如果有编译错误,修复它们并重复...直到代码编译没有错误。

    5. 如下运行编译好的类:

        java -classpath . person.Main
      

    要获得更一般的答案,请阅读以下内容:


    不推荐像这样从命令行构建/运行。您最好学习使用 1) 像 Eclipse 或 NetBeans 这样的 IDE 和 2) 像 Ant、Maven 或 Gradle 这样的构建工具。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-01-05
      • 2015-02-06
      • 2018-10-10
      • 2014-09-15
      • 2015-09-10
      • 2015-08-22
      相关资源
      最近更新 更多