Java 无法访问包中的类

Java 无法访问包中的类,java,package,packages,Java,Package,Packages,我有以下目录结构: MessManagement是父目录 在该目录下,我有3个目录: 学生,信息召集人,信息管理人 学生目录包含student.java和student.class文件。mesconverter包含mesconverter.java这需要Student类,因为mesconverter是从Student本身扩展而来的 我应该如何包装这些类 到目前为止我都试过了 代码: 这是Student.java package MessManagement; import java.sql.*;

我有以下目录结构:

MessManagement
是父目录

在该目录下,我有3个目录:
学生
信息召集人
信息管理人

学生目录包含
student.java
student.class
文件。
mesconverter
包含
mesconverter.java
这需要
Student类
,因为
mesconverter
是从
Student
本身扩展而来的

我应该如何包装这些类

到目前为止我都试过了

代码:

这是
Student.java

package MessManagement;
import java.sql.*;

public class Student
{

}
package MessManagement;
import MessManagement.student.Student;
public class MessConvener extends Student
{

}
这是
mesconverner.java

package MessManagement;
import java.sql.*;

public class Student
{

}
package MessManagement;
import MessManagement.student.Student;
public class MessConvener extends Student
{

}
但这似乎不起作用。错误:

MessConventer.java:2:错误:包MessManagement.student不存在
导入mesmanagement.student.student;
^
MessConverner.java:3:错误:找不到符号
公共班级召集人扩大学生人数
^
符号:班级学生

2个错误

发生这种情况可能有两个原因

  • 类路径中是否包含目录的根目录?您需要指定何时启动java程序。或者

  • 你们的课是公开的吗?如果忘记了公共修饰符,类将具有包可见性,并且无法从其他包访问

  • 哦,没人指望西班牙宗教法庭。。。仔细检查拼写,包括大写字母


  • 你所犯的错误是有道理的。
    Student
    类位于
    MessManagement
    包中,而不是
    MessManagement.Student
    包中

    因此,在
    MessManagement
    中删除导入的
    Student
    ,或者将
    Student
    中的包名更改为
    MessManagement.Student


    对我来说,我得到这个错误是出于不同的原因,这是在一个maven项目中。在我对类进行了重大更改并复制了许多新类之后,这种情况就开始出现了。在您的案例中,没有冲突的包名称

    解决方案是进行
    mvn清理


    在这之后,我再也没有遇到这个错误。

    我最近遇到了这个问题,这是因为我编译的java文件所在的目录中有一个类文件。您需要删除该目录中的所有.class文件

    我删除了文件夹,问题就解决了

    对我来说,这是在将java更新到jdk_16之后发生的

    在我更改了“.idea”文件夹中的“misc.xml”文件后,问题就解决了。
    将languageLevel=“JDK_15”更改为languageLevel=“JDK_16”。

    您使用的是什么IDE?我使用的是UBUNTU中的终端。您如何编译此代码?查看您的错误消息,我认为这是一个简单的类路径问题。当您试图编译类路径时,需要在javac命令中指定它。。因此,我们可以更好地帮助您..在编译MessConventer.java类之前,您是否先编译Student.java类?如何包含类路径..?感谢Maved提示!我还抄了一些课。点击IntelliJ(“重新导入所有Maven项目”)中的蓝色Maven刷新按钮就足够了。ok mvn clean是一个超级提示,当我打开IntelliJ内部的终端键入mvn clean时,IntelliJ突然恢复了自我并开始识别我的类。。。