grep -lP '\s*public\s+static\s+void\s+main\s*\(\s*(?:\[\s*\]\s*)?String\s*(?:\[\s*\])?\s*\w+\s*\)' *.java上面的命令将返回一个包含 main 方法的 .java 文件列表,这只是每个程序的 Main 类的指示。如上所述,公共类并不一定意味着它是程序的主类,所以我相信上面的 grep 命令是你在这种情况下最好的机会。另请注意,在同一个应用程序/程序中,可能有多个包含 main 方法的类,即使实际上只有一个类用作程序的入口点。