【问题标题】:error: Could not find or load Main class when compiling in CMD错误:在 CMD 中编译时无法找到或加载主类
【发布时间】:2015-03-24 11:59:37
【问题描述】:

我的代码在 Eclipse 中运行时会编译,但是每当我尝试在命令提示符下运行它时,它都会抛出错误“无法找到或加载主类菜单”我已经坚持了好几个小时但仍然不知道如何解决它,以便任何帮助将不胜感激。 switch 语句调用不同类中的方法。

import java.util.Scanner;
import classSeperation.Frequency;
import classSeperation.InputFileAndString;

public class Menu {
public static String S="";
public static Scanner Scase = new Scanner(System.in);
//InputFileAndString inp= new InputFileAndString();
//Frequency FR= new Frequency();

public static void main(String[] args) {
    Menu mnu= new Menu();
    mnu.MainMenu();

}
    public void MainMenu(){
    System.out.println("Please enter a number");
    System.out.println("Enter 0 to exit the program");
    System.out.println("Enter 1 for inputting a file name");
    System.out.println("Enter 2 for inputting a string");
    System.out.println("Enter 3 for test 'I am a man frequency'");  
    S= Scase.nextLine();
    Frequency FR= new Frequency();
    switch(S){
    default:
        System.out.println("Please select a valid option");
        MainMenu();
    case "0":
        System.out.println("Exiting program");
        System.exit(0);

    case "1":
        InputFileAndString inp= new InputFileAndString();
        inp.FileImp();

    case "2":

        FR.Freq();  
        break;
    case "3":

        FR.ManFreq();
        break;
    }
    Scase.close();
    }

    public void SubMenuF(){
        System.out.println("Please enter a number");
        System.out.println("Enter 0 to exit");
        System.out.println("Enter 1 for a graph result");
        System.out.println("Enter 2 for character frequencies");
        System.out.println("Enter 3 to return to Main Menu");
        S= Scase.nextLine();
        Frequency FR= new Frequency();
        switch(S){
        default:
            System.out.println("This is not a valid option, please try again");
            SubMenuF();
        case "0":
            System.out.println("Exiting program");
            System.exit(0);

        case "1":
            FR.graph();
            break;
        case "2":
            //Frequency
            Frequency.frequencyFile();
            break;
        case "3":
            MainMenu();
        }
    }

    public void SubSubMenu(){
         String S="";
         Scanner Scase = new Scanner(System.in);
        System.out.println("Please enter a number");
        System.out.println("Enter 0 to exit the program");
        System.out.println("Enter 1 for a graph");
        System.out.println("Enter 2 to return to the main menu");
            S= Scase.nextLine();
        Frequency FR= new Frequency();
        switch(S){
        default:
            System.out.println("This is not a valid option, please try again");
            SubSubMenu();
            break;
        case "0":
            System.out.println("Exiting program");
            System.exit(0);
        case "1":
            FR.graph();
            break;
        case "2":
            MainMenu();
    }
        Scase.close();

    }

    } 

【问题讨论】:

  • 你是如何在命令行上编译/运行它的?请记住,Eclipse 编译的文件与源文件不在同一目录中。

标签: java class compiler-errors runtime-error command-prompt


【解决方案1】:

检查文件名是否与类名相同... 例如 Menu.java

编译或运行时是否出错?

What does "Could not find or load main class" mean?

这可能会有所帮助

【讨论】:

    【解决方案2】:

    将文件名保存为 ---- Menu.java--- 因为程序执行从 main 方法开始,您可能已将其保存为不同的名称。 检查一次

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-27
      • 2014-10-19
      • 2012-09-13
      相关资源
      最近更新 更多