什么是最好的java库来编写自定义重构脚本?

时间:2011-09-03 14:14:20

标签: java eclipse ide refactoring automated-refactoring

我计划对大型项目进行复杂的重构,默认的ide功能是不够的。如果可能,请提供教程链接。

语言:java,xml

我谈论java重构的程序化api

示例我在项目中创建了新的api,我想自动折射一些代码来使用它,即源代码转换为ast树

1 个答案:

答案 0 :(得分:2)

始终Eclipse;您应该能够通过其内部过程API访问其Java重构机制。无论是那些都很容易找到或有详细记录,我不知道。没有源到源的转换。

有一个名为Jackpot的工具,据说可以用来支持这项任务。我相信它也只提供程序性API,但我认为它们是有意记录的。没有源到源的转换功能。

我们的DMS Software Reengineering Toolkit及其Java Front End可用于此目的。

DMS被设计为用于多种语言的通用程序转换引擎(Java只是它恰好了解的一种)。它可以执行任意代码更改。 DMS提供对AST的解析,符号表构造,AST操作接口,包括OP对模式定向源到源转换的请求,以及从任何修改的AST再生源文本(包括原始注释,如果未更改)。 DMS很乐意阅读构成您的应用程序的所有文件,因此您可以轻松实现跨源文件边界的更改。

人们可能会建议使用一些解析器生成器。虽然解析是必要的,但这还不够;解析器无法完成您需要的所有其他事情(上图)。