当前位置:K88软件开发文章中心编程工具Gradle → 文章内容

Gradle Sonar Runner 插件

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-24 10:31:54

property "sonar.language", "grvy" } }} 对于一个特定的子项目,要跳过 Sonar 分析,可以设置 sonarRunner.skipProject。跳过项目分析build.gradle project sonarRunner { skipProject = true }} 分析自定义的 Source Sets默认情况下, Sonar Runner 插件传给 project 的 main source set 将作为生产源文件,传给 project 的 test source sets 将作为测试源文件。这个过程与 project 的源目录布局无关。根据需要,可以添加额外的 source sets。分析自定义的Source Setsbuild.gradle sonarRunner { sonarProperties { properties["sonar.sources"] += sourceSets.custom.allSource.srcDirs properties["sonar.tests"] += sourceSets.integTest.allSource.srcDirs }} 分析非 Java 语言要分析非 Java 语言编写的代码,请安装相应的 Sonar 插件,并相应地设置 sonar.project.language :分析非 Java 语言build.gradle sonarRunner { sonarProperties { property "sonar.language", "grvy" // set language to Groovy }} 截至 Sonar 3.4,每个项目只可以分析一种语言。不过,在多项目构建中你可以为每一个项目分析一种不同的语言。更多关于配置 Sonar 的属性让我们再详细看看 sonarRunner.sonarProperties {}块。正如我们在示例中已经看到的, property()方法允许设置新属性或重写现有的属性。此外,所有已配置到这一点的属性,包括通过 Gradle 预配置的所有属性,还可通过 properties 访问器进行使用。在 properties map 的条目可以使用常见的 Groovy 语法来读取和写入。为了方便它们的操作,这些值值仍然使用它们惯用的类型 (File,List等)。SonarProperties 块在经过评估后,这些值值被转换为字符串,如下所示: 集合的值(递归) 转换为以逗号分隔的字符串,其他所有的值通过调用其tostring ()方法进行转换。因为 sonarProperties 块的评估是惰性的,Gradle 的对象模型的属性可以在块中被安全地引用,而无需担心它们还没有被赋值。从命令行设置 Sonar 属性Sonar 属性也可以从命令行中设置,通过设置一个系统属性,名称就像正在考虑中的 Sonar 属性。当处理敏感信息 (例如证件),环境信息,或点对点配置时,这会非常有用。gradle sonarRunner -Dsonar.host.url=http://sonar.mycompany.com -Dsonar.jdbc.password=myPassword -Dsonar.verbose=true 虽然有时当然很有用,但我们建议在 (版本控制的)构建脚本中,能够方便地让每个人都保持大部分的配置。 通过一个系统属性设置的 Sonar 属性值将覆盖构建脚本中设置的任何值(同样的属性名称)。当分析项目的层次结构时,通过系统属性设置的值应用于所分析层次结构的根项目。在一个单独的进程中执行 Sonar Runner根据项目大小,Sonar Runner 可能需要大量的内存。由于这个和其他(主要是隔离)的原因,最好在一个独立的进程中执行 Sonar Runner。一旦 Sonar Runner 2.1 发布,将提供这个功能,并由 Sonar Runner 插件采用。到那时,Sonar Runner 会在 Gradle 主进程中执行。任务Sonar Runner 插件向 project 中添加了以下任务。表 36.4. Sonnar Runner 插件 - 任务 任务名称依赖于类型描述sonarRunner {-sonarRunner {分析项目层次结构,并将结果存储在 Sonar 数据库。

上一页  [1] [2] 


Gradle Sonar Runner 插件