最近在弄sonar扫描的事情,之前一直只能扫描java代码,这样统计出来的数据上报领导很多开发人员不服(说我不用写jsp了不用写js了?),
那么好,于是乎继续整sonar,在官网中看到sonar其实有js、jsp的插件,这样一来,就可以实现扫描js和jsp了。
安装sonar服务器这里就不细说
要扫描js、jsp那肯定得给sonar服务器加插件,加插件可在sonar更新中心加,也可以下载jar包放到sonar的plugins下
1)JavaScript代码检查:http://docs.codehaus.org/display/SONAR/JavaScript+Plugin
2)Web页面检查(HTML、JSP、JSF、Ruby、PHP等):http://docs.codehaus.org/display/SONAR/Web+Plugin
一、maven项目扫描java、js、jsp
sonar提供对maven的集成,所以maven项目扫描是非常简便(sonar集成maven这里不细说,网上一大票文章)
那么sonar怎么扫描三种语言的信息呢,很简单,配置pom.xml,把sonar扫描的资源路径配成java、jsp、js的资源的根路径就完了
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <sonar.sources>src</sonar.sources> </properties>
扫描后sonar里显示情况:
二、一般web项目扫描
一般项目推荐使用sonar-runner,sonar-runner和sonar集成达成扫描效果,
这里需要配置sonar-project.properties,然后使用sonar-runner去扫描
#required metadata #projectKey项目的唯一标识,不能重复 sonar.forceAuthentication=false sonar.login=saq sonar.password=000000 sonar.projectKey=testuser sonar.projectName=testuser sonar.projectVersion=1.0 sonar.sourceEncoding=UTF-8 sonar.modules=java-module,javascript-module,html-module # Java module java-module.sonar.projectName=Java Module java-module.sonar.language=java # .表示projectBaseDir指定的目录 java-module.sonar.sources=. java-module.sonar.projectBaseDir=src/main/java sonar.binaries=classes # JavaScript module javascript-module.sonar.projectName=JavaScript Module javascript-module.sonar.language=js javascript-module.sonar.sources=js javascript-module.sonar.projectBaseDir=src/main/webapp # Html module html-module.sonar.projectName=Html Module html-module.sonar.language=web html-module.sonar.sources=pages html-module.sonar.projectBaseDir=src/main/webapp