我已经安装了一个名为PMD的Eclipse插件,并且只想使用它的一项功能(提取“抽象语法树”)。主要的问题是,我不想右键单击每个Java源代码,然后单击AST功能,而是希望完全自动化它,而无需单击任何东西。

因此,问题是有没有一种方法或方法可以从我编写的源代码中调用该插件的功能。

我尝试导入PMD的maven项目,但是遇到一些错误,并且我将不使用许多功能(支持其他语言等)。因此,我正在尝试找到一种更轻量级的方法。 PMD是一个很大的项目,可以将其集成到我自己的项目中。

提前致谢。

最佳答案

显然,PMD Plugin的源代码已打开。因此,将相关的类和方法转换为标准的Java桌面应用程序(而不是插件)时,可以在没有和UI交互的情况下创建AST文件。

转换部分非常简单。由于PMD插件需要UI,因此它使用IFile,IProject等类。因此,可以将这些类更改为等效类,例如;文件,项目等

在给出项目的路径并通过添加一个简单的代码以递归方式遍历其子目录后,将帮助您找到所有Java源文件。然后,通过将每个Java源文件发送到AST生成器方法中,将完成所有操作。

10-07 19:27
查看更多