繁体   English   中英

无法在 Java 中找到或加载 main 类

[英]Could not find or load main a class in Java

我有以下项目结构:

JavaTest
    Main
        Main.java
    Test
        Test.java

主.java:

package Main;
import Test.*;
public class Main {
    public static void main(String[] args) {
    }
}

测试.java:

package Test;
public class Test {
} 

我使用以下命令编译它们:

D:\Development\Workspace\JavaTest>javac Main\Main.java

D:\Development\Workspace\JavaTest>javac Test\Test.java

类文件是这样放置的:

JavaTest
    Main
        Main.java
        Main.class
    Test
        Test.java
        Test.class

我正在尝试使用以下命令运行它:

D:\Development\Workspace\JavaTest>java -cp D:\Development\Workspace\JavaTest\Main;D:\Development\Workspace\JavaTest\Test Main

我得到的错误是:

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

将包添加到您的主类并将类路径设置为基目录

D:\Development\Workspace\JavaTest>java -cp D:\Development\Workspace\JavaTest Main.Main

我建议您坚持 Java 约定并在您的包中仅使用小写名称。 而且您不需要测试路径来运行您的课程

请按以下步骤操作:

javac -d . Main/Main.java
java Main.Main

笔记:

  1. 当前目录由.
  2. 我建议您遵循 Java 命名约定。 根据命名约定,您的包的名称应该是main 查看https://www.oracle.com/technetwork/java/codeconventions-135099.html了解更多详情。
  3. 使用命令javac -help了解有关javac可用选项的更多信息。

暂无
暂无

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

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