当前位置: 首页 > 知识库问答 >
问题:

错误:找不到或加载主类?

荣轶
2023-03-14

我有一个名为TestInventory.java的类,其他类在默认包中,都在src文件夹中。然而,当我运行它时,我得到:

错误:找不到或加载主类

 import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.util.Scanner;
    //@ author Jane Choe
    public class TestInventory {

        public void main(String[] args) throws FileNotFoundException {
            Inventory inv = new Inventory();

            // TODO:  Read in the input file and populate the movieList. Manage exceptions.
            // On a failed movie load print the message
            // "Exception " + e.getMessage() + " for film " + title. No loading."
            FileReader file = new FileReader("movies_db.txt");
            Scanner sc = new Scanner (file);

            while (sc.hasNextLine()){
                String line = sc.nextLine();
                String [] splitline = line.split("-");
                //if (splitline[6]== null){// has as many parameters as an action movie
                    //try {// try adding to action
                System.out.println("p");
                        inv.add(new Action(splitline[0], Integer.parseInt(splitline[1]), Integer.parseInt(splitline[2]), 
                                Integer.parseInt(splitline[3]), Integer.parseInt(splitline[5])));

                    //}
                    //catch{
                    //  System.out.println("Exception + e.getMessage() + " for film " + title. No loading.");
                    //}
                //} // if loop
            }/*
            else{
                try {// try adding to RomCom
                    inv.add(RomCom((splitline[0], Integer.parseInt(splitline[1]), Integer.parseInt(splitline[2]), 
                            Integer.parseInt(splitline[3]), (splitline[4]),
                            Integer.parseInt(splitline[5]), Integer.parseInt(splitline[6]));
                }
                catch{
                    System.out.println("Exception + e.getMessage() + " for film " + title. No loading.");
                }
            }
        }
        */


        //DO NOT CHANGE
        System.out.println("Inventory should now contain file contents.");
                            System.out.println(inv.toString());

                            Movie starWars = new Action("Star Wars - A New Hope", 1977, 121, 3.8, 89);
                            inv.add(starWars);

                            Movie numberFour = new Action("I Am Number Four", 2011, 101, 3.2, 11);
                            inv.add(numberFour);

                            Movie someoneLikeYou = new RomCom("Someone Like You", 2011, 101, 3.2, 2, 5);
                            inv.add(someoneLikeYou);

                            Movie crazyStupidLove = new RomCom("Crazy, Stupid, Love 2", 2013, 113, 3.9, 1, 3);
                            inv.add(crazyStupidLove);

                            System.out.println("Inventory should now contain 13 movies. " + (inv.size() == 13));
    /* add this in later
                            if(inv.remove(crazyStupidLove.getTitle(), crazyStupidLove.getYear())) {
                                System.out.println("Successfully removed 'Crazy, Stupid, Love'");
                                if(!inv.remove(crazyStupidLove.getTitle(), crazyStupidLove.getYear())) {
                                    System.out.println("Successfully ignored second remove attempt for 'Crazy, Stupid, Love'");
                                }
                            }
    */
                            try {
                                inv.add(new RomCom("27 Dresses", 2008, 103, 4.4, 1, 1));
                            } catch (IllegalArgumentException e) {
                                System.out.println("Successfully threw exception on invalid parameter.");
                            }

                            try {
                                inv.add(someoneLikeYou);
                            } catch (MovieInventoryException e) {
                                System.out.println("Successfully threw exception on duplicate add attempt.");
                            }

                            System.out.println("Inventory should now contain 12 movies. " + (inv.size() == 12));

                            System.out.println("Inventory should not contain 'The Matrix'? " + !inv.contains("The Matrix", 1999));
                            System.out.println("Inventory should not contain 'Something Borrowed'? " + !inv.contains("Something Borrowed", 2009));
                            System.out.println("Inventory should not contain '27 Dressed'? " + !inv.contains("27 Dressed", 2008));

                            System.out.println("\n" + inv.toString());
    }

    }

共有1个答案

沈单弓
2023-03-14

您忘记了主方法中的“静态”。

public static void main(String[] args) {
  //do something
}
 类似资料:
  • 问题内容: 我在编译和运行Java代码时遇到了麻烦,该代码旨在允许我将Java与模拟建模包Vensim的共享对象接口。 以下代码编译没有错误: 但是,当我尝试运行以下命令时: 我收到以下错误:“错误:找不到或加载主类SpatialModel”。我的SpatialModel.java代码确实包含一个“主要”方法(如下),所以我不确定是什么问题- 有人可以帮我吗?谢谢。 问题答案: 您必须确保将文件的

  • 我一直在搜索这一点,但没有任何帮助,我试图运行的主要类,但不断得到一个错误。我负责这个 我的主文件位于中 我尝试了多个命令,但一无所获。 我想运行位于中的主类,但总是出现此错误,请提供帮助吗?

  • 问题内容: 我试图将HelloWorld放在.jar文件中并运行它,但是它不起作用。我创建了Java文件并在程序中键入内容,然后用cmd编写: 而且有效。然后我进入 得到了输出 然后我进入 第一行有效,而第二行却给我一个错误: 当我尝试使用64位jre7 \ bin,jdk1.7.0_51 \ bin,jdk1.7.0_51 \ jre \ bin中的java.exe文件打开它时,我得到的输出是(

  • 问题内容: 我通过cmd.exe在Windows 7上使用Java SDK 1.7。直到几个小时前,一切突然都无法正常运行,突然之间我无法运行编译的类文件,标题中始终显示错误。 我似乎能够编译My.java文件,但是无法运行生成的类文件(My.class)。我经常收到错误“错误:找不到或加载主类My.class”。我已经尝试了多个其他类文件,都导致了相同的问题。 如果您想知道,我的“路径”环境变量

  • 问题内容: 我在编译和运行Java代码时遇到麻烦,目的是允许我将Java与模拟建模包Vensim的共享对象接口。 以下代码编译没有错误: 但是,当我尝试运行以下命令时: 我收到以下错误:“错误:找不到或加载主类SpatialModel”。我的SpatialModel.java代码确实包含一个“主要”方法(如下),所以我不确定是什么问题-有人可以帮我吗?谢谢。 问题答案: 你必须确保将文件的位置添加

  • 我得到了新的笔记本电脑(Windows7),我正在尝试设置Maven。