有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java声明的包<package name>与VS代码中的预期包“”不匹配

这是我在VS代码中遇到的错误,当我试图在一个简单的程序中创建一个包时

The declared package "mypack" does not match the expected package "" Java(536871240)

 Aclass.java  Bclass.java

编译Aclass java文件。但是在编译Bclass java文件之后,它会出现这个编译时错误

 Aclass compile  Bclass compile error

这是一个类java文件代码

package mypack;

class A {
    void MethodA() {
        System.out.println("This is class A");
    }
}

class Aclass {
    public static void main(String args[]) {
        A a = new A();
        a.MethodA();
    }
}

这是B类java文件代码

import mypack.*;

class B {
    void MethodB() {
        System.out.println("This is class B");
    }
}

class Bclass {
    public static void main(String args[]) {
        B b = new B();
        b.MethodB();
        A a = new A();
        a.MethodA();
    }
}

共 (2) 个答案

  1. # 1 楼答案

    The declared package "mypack" does not match the expected package "" Java(536871240)

    这是因为你没有把.java文件放在mypack文件夹中

    第二个错误是BABclass.java中,但是编译命令没有包含它们,所以您应该使用该命令编译多个java文件

    javac -d ./ mypack\*.java
    

    然后通过javac mypack.Bclass执行它,您可以得到正确的结果:

    enter image description here

  2. # 2 楼答案

    您只需在Visual Studio code的“资源管理器”选项卡中右键单击下面的文件,然后从java源路径中选择“删除文件夹”

    这对我很有帮助,现在没有问题了

    再次记住,右键单击>;从java源路径中删除文件夹