“线程中的异常”;“主要”;java.lang.NoSuchMethodError:main-如何修复它?

“线程中的异常”;“主要”;java.lang.NoSuchMethodError:main-如何修复它?,java,Java,可能重复: 我正在使用Eclipse。我删除了所有内容并保留了主要功能-没有任何功能可用。有人能帮忙吗 package good; import java.io.*; public class FiFo { public static void main() { System.out.println("here"); } } class FileReader { public FileReader(String fileN

可能重复:

我正在使用Eclipse。我删除了所有内容并保留了主要功能-没有任何功能可用。有人能帮忙吗

package good;

import java.io.*;

public class FiFo {     
    public static void main()
    {
        System.out.println("here");
    }
}    

class FileReader {
    public FileReader(String fileName)
    {
        try {
            FileInputStream fstream = new FileInputStream(fileName);
            BufferedReader br = new BufferedReader(new InputStreamReader(fstream));
        }
        catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        catch (IOException e) {
            e.printStackTrace();
        }
    }
}

主功能应具有如下签名:

public static void main( String[] args )
{
   // stuff ...
}
你错过了字符串数组。运行程序时,它希望找到的不是示例代码中的空参数列表。

来自java文档:

线程“main”中出现异常 java.lang.NoSuchMethodError:main

JavaVM要求类 您可以使用main方法执行它 开始执行您的 应用程序

import java.util.*;
import java.io.*;
import java.lang.*;

public class Run
{
    static BufferedReader nhap = new BufferedReader(new InputStreamReader(System.in));

    public Run()
    {
    }

    public static void main(String[] args) throws Exception
    {   
        int chon;
        System.out.println("1. Nhap Sinh Vien");
        System.out.println("2. Nhap Giao Vien");
        System.out.println("=> Moi ban chon 1 hoac 2 de nhap lieu");
        chon = Integer.parseInt(nhap.readLine());

        switch (chon)
        {   
            case 1:
            {
                System.out.print("So luong sinh vien can nhap vao: ");
                int SoSV = Integer.parseInt(nhap.readLine());
                System.out.print("=> Test  :  " + SoSV );
                SinhVien[] SV = new SinhVien[SoSV];
                int i;
                for (i = 0; i < SV.length; i++);
                {
                    System.out.printf("Nhap thong tin Sinh vien thu %d \n ", i + 1);
                    SV[i] = new SinhVien();
                    AddSV(SV[i]);
                }
            }
            case 2:
            {   
            }
            default: System.out.println("Lua chon cua ban khong co trong danh sach !");
        }   
    }

    public static void AddGV(GiaoVien gv) throws Exception
    {
        try
        {
            System.out.println("Nhap ma Giao vien: ");
            int ma = Integer.parseInt(nhap.readLine());
            System.out.print("Nhap ho ten giao vien ");
            gv.setHoten(nhap.readLine());
            System.out.print("Nhap tuoi giao vien");
            int tuoi = Integer.parseInt(nhap.readLine());
            System.out.print("Nhap ten khoa giao vien dang day");
            gv.setTenKhoa(nhap.readLine());
            System.out.print("Nhap chuyen nganh giao vien day");
            gv.setChuyenNganh(nhap.readLine());
            System.out.print("Nhap vao Mon giao vien day");
            gv.setMonDay(nhap.readLine());
        }
        catch(Exception ex)
        {   
            throw new Exception (ex.getMessage());
        }
    }

    public static void AddSV(SinhVien sv) throws Exception
    {
        try
        {   
            System.out.println("Nhap ma Sinh vien: ");
            int ma = Integer.parseInt(nhap.readLine());
            System.out.print("Nhap ho ten Sinh vien ");
            sv.setHoten(nhap.readLine());
            System.out.print("Nhap tuoi Sinh vien ");
            int tuoi = Integer.parseInt(nhap.readLine());
            System.out.print("Nhap ten khoa Sinh vien dang hoc");
            sv.setTenKhoa(nhap.readLine());
            System.out.print("Nhap Khoa sinh vien dang hoc");
            sv.setKhoaHoc(nhap.readLine());
            System.out.print("Nhap vao Lop Sinh vien hoc");
            sv.setLop(nhap.readLine());
        }
        catch(Exception ex)
        {
            throw new Exception (ex.getMessage());
        }
    }

    public static void OutPutSV(SinhVien sv) throws Exception
    {
        try
        {
            sv.Tostring();
        }
        catch(Exception ex)
        {   
            throw new Exception(ex.getMessage());
        }
    }

    public static void OutPuttGV(GiaoVien gv) throws Exception
    {
        try
        {
            gv.Tostring();
        }
        catch(Exception ex)
        {   
            throw new Exception (ex.getMessage());
        }
    }    
}

因此,它可能是错误的主签名,如第一篇文章所述

如果您使用的是Eclipse,那么您需要确保“作为”Java应用程序“运行”。

import Java.util.*;
 public static void main()  // not correct signature for main
导入java.io.*; 导入java.lang.*; 公营课 { 静态BufferedReader nhap=新的BufferedReader(新的InputStreamReader(System.in)); 公营 { } 公共静态void main(字符串[]args)引发异常 { 林聪; System.out.println(“1.Nhap Sinh Vien”); System.out.println(“2.Nhap Giao Vien”); 系统输出打印号(“=>Moi ban chon 1 hoac 2 de nhap LIUE”); chon=Integer.parseInt(nhap.readLine()); 开关(chon) { 案例1: { 系统输出打印(“So luong sinh vien can nhap vao:”); int-SoSV=Integer.parseInt(nhap.readLine()); 系统输出打印(=>测试:+SoSV); SinhVien[]SV=新SinhVien[SoSV]; int i; 对于(i=0;i
尤其是
String[]
参数不是可选的。4天前已经回答了:)此社区Wiki问题列出了此常见问题的可能原因: