是否有任何命令行函数可以从一个巨大的 Java 文件中返回主类的名称?

我想自动化从互联网上下载大量 Java 文件并一个一个测试它们的过程。但是,大多数站点都没有指定主类的名称。因此,大多数时候,我需要手动搜索字符串“public class”以确定文件名。有更好的流程吗?


一般来说,代码格式是:


import ...

import ...

import ...


class A {...}

class B {...}

public class C {...}


开心每一天1111
浏览 126回答 1
1回答

哈士奇WWW

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 方法的类,即使实际上只有一个类用作程序的入口点。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java