检测API变化/演变

not*_*oop 10 java api compatibility

我想测量给定Java项目的API演变,特别是新的/重命名的类,新方法,新弃用的方法等.有没有一个工具可以检测到这些变化?

早在2007年,Google GSoc项目就已启动,但是,我无法找到最终的工作.

Pas*_*ent 7

我使用Clirr,二进制兼容性检查器.来自Clirr网站:

它是什么?

Clirr是一个检查Java库以获得与旧版本的二进制和源兼容性的工具.基本上你给它两组jar文件,Clirr转储出公共api中的变化列表.可以将Clirr Ant任务配置为在检测到不兼容的api更改时中断构建.在持续集成过程中,Clirr可以自动防止意外引入二进制或源兼容性问题.

...

特征

  • 报告所有API更改(目前仅部分实施)
  • 评估每个变化.二进制和源兼容性
  • 支持纯文本和XML报告
  • 灵活的故障处理(警告与错误,打破构建或设置错误属性)