繁体   English   中英

声明的 package "a" 与预期的 package "" 不匹配

[英]The declared package "a" does not match the expected package ""

具有此文件架构:

folder "a"
        |
        |_____ MyClass.java

我的“.java”文件中有这段代码:

package a;

public class MyClass {
    public static void main(String[] args) {
        System.out.println("Hello world");

    }
}

我想知道我收到此错误的原因(我使用的是 visual studio,我说它以防它与我的错误有关):

The declared package "a" does not match the expected package "".

我注意到,有时当我重新打开我的文件夹时,它会突然起作用,但有时却不起作用。

我不知道为什么会发生这种情况,我相信它与 visual studio 相关的原因,但它更进一步,因为当我尝试编译它时,如前所述,有时它有效,而其他人则没有。

告诉我这个错误:

Error: Could not find or load main class MyClass
Caused by: java.lang.NoClassDefFoundError: a/MyClass (wrong name: MyClass)
package a;

public class MyClass {
    public static void main(String[] args) {
        System.out.println("Hello world");

    }
}

这取决于您引用 class 的位置。如果a是一个子文件夹,并且您试图从a中编译MyClass.java它将不起作用(除非您指定正确的文件夹,如./..或类似的文件夹。包是相对的到某个根文件夹或其他 package。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM