接口变化统计工具--Clirr

时间:2023-03-09 19:13:04
接口变化统计工具--Clirr

  最近学习Mybatis的官方文档,看到了【项目文档】一节有很多内容没有见过,做个笔记,理解一下。

  

  当写一个公共库,或者SDK,版本与版本之间迭代之后,总会发生接口的变化,而这些变化,都需要向外界进行告知,同时也是自己需要统计代码质量的一个途径。

  其实,写个自动化工具,维护各个类的各个方法参数+返回值,然后做对比就好了。但是,怎么对比呢?晚上回去看看,应该很有意思。

  Clirr就是完成这样一个目标的工具,它的实例输出如下:

  

API Incompatibilities

Severity Message Class Method / Field
接口变化统计工具--Clirr Return type of method 'public boolean flushCache()' has been changed to org.apache.ibatis.annotations.Options$FlushCachePolicy org.apache.ibatis.annotations.Options public boolean flushCache()
接口变化统计工具--Clirr Method 'public java.lang.String resultSets()' has been added to an interface org.apache.ibatis.annotations.Options public java.lang.String resultSets()
接口变化统计工具--Clirr Method 'public java.lang.String id()' has been added to an interface org.apache.ibatis.annotations.Results public java.lang.String id()