接口变化统计工具--Clirr
最近学习Mybatis的官方文档,看到了【项目文档】一节有很多内容没有见过,做个笔记,理解一下。
当写一个公共库,或者SDK,版本与版本之间迭代之后,总会发生接口的变化,而这些变化,都需要向外界进行告知,同时也是自己需要统计代码质量的一个途径。
其实,写个自动化工具,维护各个类的各个方法参数+返回值,然后做对比就好了。但是,怎么对比呢?晚上回去看看,应该很有意思。
Clirr就是完成这样一个目标的工具,它的实例输出如下:
API Incompatibilities
| Severity | Message | Class | Method / Field | 
|---|---|---|---|
| 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() | |
| Method 'public java.lang.String resultSets()' has been added to an interface | org.apache.ibatis.annotations.Options | public java.lang.String resultSets() | |
| Method 'public java.lang.String id()' has been added to an interface | org.apache.ibatis.annotations.Results | public java.lang.String id() | 
接口变化统计工具--Clirr的更多相关文章
- iOS开发工具篇-AppStore统计工具 (转载)
		
随着iOS开发的流行,针对iOS开发涉及的方方面面,早有一些公司提供了专门的解决方案或工具.这些解决方案或工具包括:用户行为统计工具(友盟,Flurry,Google Analytics等), App ...
 - Python实现代码统计工具——终极加速篇
		
Python实现代码统计工具--终极加速篇 声明 本文对于先前系列文章中实现的C/Python代码统计工具(CPLineCounter),通过C扩展接口重写核心算法加以优化,并与网上常见的统计工具做对 ...
 - 一站式学习Wireshark(七):Statistics统计工具功能详解与应用
		
Wireshark一个强大的功能在于它的统计工具.使用Wireshark的时候,我们有各种类型的工具可供选择,从简单的如显示终端节点和会话到复杂的如Flow和IO图表.本文将介绍基本网络统计工具.包括 ...
 - iOS开发工具篇-AppStore统计工具
		
本文转载至 http://mobile.51cto.com/hot-418183.htm 随着iOS开发的流行,针对iOS开发涉及的方方面面,早有一些公司提供了专门的解决方案或工具.这些解决方案或工具 ...
 - iOS开发工具篇-AppStore统计工具
		
苹果官方的iTunes Connect提供的销售数据统计功能比较弱,例如只能保存最近30天的详细销售数据,界面丑陋, 无法查看App的排名历史变化情况等. 早有一些公司提供了专门的解决方案或工具.这些 ...
 - JDK1.8新特性——Collector接口和Collectors工具类
		
JDK1.8新特性——Collector接口和Collectors工具类 摘要:本文主要学习了在Java1.8中新增的Collector接口和Collectors工具类,以及使用它们在处理集合时的改进 ...
 - HotApp小程序统计,第一个专业的微信第三方小程序统计工具
		
1.什么是HotApp小程序统计 HotApp小程序统计是第一个微信第三方小程序统计工具,就像做android 和 ios开发的人知道友盟统计一样,小程序也需要有个统计工具. 通过这个工具,可以知道小 ...
 - AutoCAD 2007-2012 长度统计工具
		
长度统计工具 下载 1 解压到磁盘 2 CAD 中输入命令 netload 3 选择文件 "CADLittleProgram.dll" 4 点击 Ps:后续会打包并支持2013-2 ...
 - springMVC Aspect AOP 接口耗时统计
		
在接口开发中,我们通常需要统计接口耗时,为后续接口性能做统计.在springMVC中可以用它的aop来记录日志. 1.在spring配置文件中开启AOP <!--*************** ...
 
随机推荐
- mysql在一台服务器搭建主从1
			
1. 登录mysq的方法: mysql-S /tmp/mysql.sock 登录3306 mysql -S /tmp/mysql_slave.sock 登录3307 mysql -h 127.0. ...
 - Centos 下搭建SVN + Apache 服务器(转载)
			
安装软件包 ? 1 # yum install httpd ? 1 # yum install mod_dav_svn ? 1 # yum install subversion 2. 验证安装 ? ...
 - oracle之to_char,to_date用法
			
[转载自]http://www.jb51.net/article/45591.htm 这篇文章主要介绍了oracle中to_date详细用法示例,包括期和字符转换函数用法.字符串和时间互转.求某天是星 ...
 - js打印对象(object)
			
function printObject(obj){//obj = {"cid":"C0","ctext":"区县"}; ...
 - ios下input focus弹出软键盘造成fixed元素位置移位
			
正常状态下 input focus软键盘弹出时 问题描述: 头部结构fixed,滚动到下部内容区域,input.textarea等focus弹出软键盘时,头部位置偏移被居中(该问题ios7 beta3 ...
 - [Js]焦点图轮播效果
			
一.所用到的知识点 1.DOM操作 2.定时器 3.事件运用 4.Js动画 5.函数递归 6.无限滚动大法 二.结构和样式 <div id="banner" class=&q ...
 - 转: Oracle中的物化视图
			
物化视图创建语法:CREATE MATERIALIZED VIEW <schema.name>PCTFREE <integer>--存储参数PCTUSED <intege ...
 - long long 读数scanf的转换 #define
			
在win32的评测系统下,long long scanf 要用"%I64d" ,而网上评测和考试要用"%lld",因此,难免有点麻烦,还会runtime err ...
 - Session初识
			
web服务器没有短期记忆,所以需要使用session来跟踪用户的整个会话活动.会话管理有3种解决方案: 1)使用隐藏域(很少使用) 在显示页面中使用隐藏域来保存会话ID.例如,在JSP中将input标 ...
 - 【海量视频】2013年上半年BPM厂商'K2'市场活动资料集锦
			
3月01日 中广核K2 &SAP流程解决方案分享 活动报道:http://www.k2software.cn/k2events_content/items/k2-sap-346 ...