一个开源的Java源代码管理平台:Sonar
时间:2010-07-29
来源:javaeye
Sonar是 一个开源平台,用于管理Java源代码的质量。“一个质量数据报告工具+代码质量管理平台”http://docs.codehaus.org/display/SONAR/Documentation
主要特点
· 代码覆盖:通过单元测试,将会显示哪行代码被选中
· 改善编码规则
· 搜寻编码规则:按照名字,插件,激活级别和类别进行查询
· 项目搜寻:按照项目的名字进行查询
· 对比数据:比较同一张表中的任何测量的趋势
整体架构如下:
Sonar项目分析页面预览:
二.安装:
1.下载压缩包,在win/linux下面均可以运行。
自身集成jetty+java内存DB,一键启动。默认启动到http://localhost:9000
正式使用可以配置mysqlDB做持久存储。当然容器也可以切换成tomcat。 具体看官站文档。
Notice:Deploy on Tomcat application server,A minimum heap size of 512Mo is required. 吃内存大户
2.环境依赖:
JDK5++
Maven2.09 ++
三。怎么分析项目
1)maven项目:(简单的讲就是带了pom.xml)
E:\>cd ws1\test 然后运行:
1.mvn clean install -Dtest=false -DfailIfNoTests=false (第一步其实可以忽略) 2. mvn sonar:sonar之后再回到页面上,查看项目分析结果。 (第2步的mvn操作其实可以集成到pom.xml里面作为一个
2)非maven项目:
方法:给项目放一个pom.xml,不需要写复杂的依赖和编译操作,简单copy如下配置,改改项目名和java代码的目录路径即可!
2 <modelVersion>4.0.0</modelVersion>
3 <groupId>song</groupId>
4 <artifactId>test</artifactId>
5 <name>test</name>
6 <version>1.1.0</version>
7 <build>
8 <sourceDirectory>src</sourceDirectory>
9 <outputDirectory>bin</outputDirectory>
10 <plugins>
11 <plugin> <groupId>org.apache.maven.plugins</groupId>
12 <artifactId>maven-compiler-plugin</artifactId>
13 <configuration>
14 <source>1.5</source>
15 <target>1.5</target>
16 <excludes>
17 <exclude>**/*.*</exclude>
18 </excludes>
19 </configuration>
20 </plugin>
21 </plugins>
22 </build>
23 <properties>
24 <sonar.dynamicAnalysis>false</sonar.dynamicAnalysis>
25 </properties> 26 </project>
详细文档在:http://docs.codehaus.org/display/SONAR/Collect+data#Collectdata-Mavenprojects
3)将sonar集成到maven中
编辑maven中config目录下的setting文件activeByDefault,Example
2 <profiles>
3 <profile>
4 <id>sonar</id>
5 <activation>
6 <activeByDefault>true</activeByDefault>
7 </activation>
8 <properties>
9 <!-- EXAMPLE FOR MYSQL -->
10 <sonar.jdbc.url>
11 jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8
12 </sonar.jdbc.url>
13 <sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver>
14 <sonar.jdbc.username>sonar</sonar.jdbc.username>
15 <sonar.jdbc.password>sonar</sonar.jdbc.password>
16 <!-- SERVER ON A REMOTE HOST -->
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28