Checkstyle手册
2014-02-28 23:01
309 查看
开发,尤其是团队开发时,经常面临这样的问题:
“你的函数命名怎么不符合规范”
“你的第三个参数怎么没有注释”
“你一个函数写了3000行,这怎么能行?”
以上都不会影响代码的运行,但是却给程序布下了不便或者隐患。所以开发前,团队总会制定规范文档,但是文档只具有借鉴的作用,不具有约束力,靠的是大家的自律;如果靠人工检查,耗时耗力——你需要Checkstyle。
前段时间为了保证团队开发的在风格上的一致性,比如:函数命名、代码长度 、文件长度、注释规范等,写了一个关于Checkstyle基础文档,供大家参考学习《Checkstyle_下载_配置_使用手册》。
总的来说,Checkstyle就是帮助我们检测源码规范并给出修改建议的一个工具。
Window—Preferences—Generral—Network Connection.
1. Active Provider,选择为Manual
2. 编辑Proxy entries下的HTTP和HTTPS的Host为127.0.0.1,Port为:8087
3. 保存
2. 以5.7.0为例,进入5.7.0,分别下载plugins和featrues下的文件
3. 并对应放到Eclipse安装目录下的plugins和featrues中,即可安装成功。
依次进入Window—Preferences,如果出现CheckStyle则表示安装成功。
勾选Checkstyle active for this project
选择制定的模板文件
然后打开使用Checkstyle的项目文件,如ICollegeBean.java即可看到Checkstyle的效果,每个小放大镜都会提示问题位置及原因:
1.tab宽度:每个tab代表4个单位宽度
2.注释:检测注释的名称和个数是否和参数匹配
3.命名规范:检测函数和参数名是否符合Sun规范
4.import:检测import引用项是否符合规范
5.代码行长度:定义为最长120个宽度
6.函数长度:函数最长代码行为150行
7.参数个数:函数参数个数最多为7个
8.空格:检测不必要的空格
9.嵌套:检测嵌套情况
10.文件长度:文件最长为2000行
11.资源文件:检测相同名称的资源文件是否有相同的key
12.编码规范:检测常见编码规范,如空行、静态变量使用、非法对象实例化
“你的函数命名怎么不符合规范”
“你的第三个参数怎么没有注释”
“你一个函数写了3000行,这怎么能行?”
以上都不会影响代码的运行,但是却给程序布下了不便或者隐患。所以开发前,团队总会制定规范文档,但是文档只具有借鉴的作用,不具有约束力,靠的是大家的自律;如果靠人工检查,耗时耗力——你需要Checkstyle。
前段时间为了保证团队开发的在风格上的一致性,比如:函数命名、代码长度 、文件长度、注释规范等,写了一个关于Checkstyle基础文档,供大家参考学习《Checkstyle_下载_配置_使用手册》。
简介
Checkstyle是检查Java程序源代码样式的插件,帮助我们检查代码,以更好的符合标准,特别适用于小组开发时彼此间的样式规范和统一。Checkstyle提供了灵活的配置性,所以除了使用它提供的几种常见标准之外,你也可以定制自己的标准。总的来说,Checkstyle就是帮助我们检测源码规范并给出修改建议的一个工具。
安装
以Eclipse Juno为例。在线安装
代理
为保证在线安装的速度,需要使用代理,代理成功成功后,需要配置Eclipse的网络连接,依次打开Window—Preferences—Generral—Network Connection.
1. Active Provider,选择为Manual
2. 编辑Proxy entries下的HTTP和HTTPS的Host为127.0.0.1,Port为:8087
3. 保存
安装
依次打开Help—Eclipse Marketplace,输入Checkstyle,选择第一个点击install,一直点击Next……Finish即可,中间提醒是否继续,点击Ok。下载安装
1. 进入网址:http://sourceforge.net/projects/eclipse-cs/files/updatesite/,出现版本列表:2. 以5.7.0为例,进入5.7.0,分别下载plugins和featrues下的文件
3. 并对应放到Eclipse安装目录下的plugins和featrues中,即可安装成功。
依次进入Window—Preferences,如果出现CheckStyle则表示安装成功。
使用
在需要使用Checkstyle的项目上,右键-Properties—CheckStyle,然后配置:勾选Checkstyle active for this project
选择制定的模板文件
然后打开使用Checkstyle的项目文件,如ICollegeBean.java即可看到Checkstyle的效果,每个小放大镜都会提示问题位置及原因:
自定义配置
配置样板
<?xml version="1.0"?> <!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.2//EN" "http://www.puppycrawl.com/dtds/configuration_1_2.dtd"> <module name="Checker"> <!--提示信息的严重性--> <property name="severity" value="warning"/> <!-- Checks that a package.html file exists for each package. --> <!-- See http://checkstyle.sf.net/config_javadoc.html#PackageHtml --> <module name="JavadocPackage"/> <!-- 忽略检测文件末尾是否有新行 --> <!-- See http://checkstyle.sf.net/config_misc.html#NewlineAtEndOfFile --> <module name="NewlineAtEndOfFile"> <property name="severity" value="ignore"/> </module> <!-- 检测两个资源文件是否具有相同的key --> <!-- See http://checkstyle.sf.net/config_misc.html#Translation --> <module name="Translation"/> <!--……………………其它配置…………--> </module>在它内部,将每个需要检测的单元以module的方式封装起来,需要检查哪些检测,将该module放入配置文件,并指定值即可。
常见检测
一般我们都需检测什么:1.tab宽度:每个tab代表4个单位宽度
2.注释:检测注释的名称和个数是否和参数匹配
3.命名规范:检测函数和参数名是否符合Sun规范
4.import:检测import引用项是否符合规范
5.代码行长度:定义为最长120个宽度
6.函数长度:函数最长代码行为150行
7.参数个数:函数参数个数最多为7个
8.空格:检测不必要的空格
9.嵌套:检测嵌套情况
10.文件长度:文件最长为2000行
11.资源文件:检测相同名称的资源文件是否有相同的key
12.编码规范:检测常见编码规范,如空行、静态变量使用、非法对象实例化
总结
凡是与人工代码无关的内容,请交给计算机。更多详见《Checkstyle_下载_配置_使用手册》。相关文章推荐
- Java知识总结-常见流
- Java知识总结-常见流
- ADB server didn't ACK问题解决
- HDU 1754 I Hate It (线段树)
- 英雄会15题 阶乘与整除
- python修改文件内容
- HDU - 1723 - Distribute Message
- 基于按annotation的hibernate主键生成策略
- Nodejs初阶之express
- 12235 - Help Bubu(状态压缩dp)
- ZOJ-2416
- Android Touch事件分发机制
- EBS Form开发 弹性域定义中的参数<->
- Websocket协议之握手连接
- javascript对象之Array
- ZOJ 2864 Catch the thief
- Effective Java 06 Eliminate obsolete object references
- MVC数据验证使用小结
- 在Debian中建立Beaglebone black的应用开发环境之一:基本概念
- Android 控制ScrollView滚动到底部