1.
$ mvn sonar: sonar
1.
http://localhost : 9000 /
- http://gradle.org/docs/current/userguide/sonar_plugin.html
https://github.com/valkolovos/gradle_cobertura/wiki
Per caso mi sono reso conto che i ragazzi Sonar hanno un repository GitHub con esempi su come configurare sonar per i vari sistemi di compilazione, tra cui Gradle:
- https://github.com/SonarSource/sonar-examples/
- http://issues.gradle.org/browse/GRADLE-1813
- https://jira.codehaus.org/browse/SONAR-2749
puntelli ["sonar.jacoco.reportPath"] = "$ {} buildDirName / jacoco.exec"
Infine, ho deviato un po 'da esempio Gradle SonarSource, e invece di proprietà del sistema, ho voluto utilizzare le proprietà Gradle per consentire agli utenti di fornire non di default le impostazioni di configurazione Sonar (url databasem, parametri jdbc ecc.) Bene, durante l'impostazione che fino mi sono imbattuto in un altro problema Gradle Jira:- http://issues.gradle.org/browse/GRADLE-1826
. 01
si applicano plugin:
'sonar'
02.
03.
sonar {
04.
05.
se
(rootProject.hasProperty (
'sonarHostUrl'
)) {
06.
server.url = rootProject.sonarHostUrl
07.
}
08.
09.
database {
10.
se
(rootProject.hasProperty (
'sonarJdbcUrl'
)) {
11.
url = rootProject.sonarJdbcUrl
12.
}
13.
se
(rootProject.hasProperty (
'sonarJdbcDriver'
)) {
14.
driverClassName = rootProject.sonarJdbcDriver
15.
}
16.
se
(rootProject.hasProperty (
'sonarJdbcUsername'
)) {
17.
username = rootProject.sonarJdbcUsername
18.
}
19.
se
(rootProject.hasProperty (
'sonarJdbcPassword'
)) {
20.
password = rootProject.sonarJdbcPassword
21.
}
22.
}
23.
24.
Progetto {
25.
dynamicAnalysis =
"reuseReports"
26.
withProjectProperties {props ->
27.
props [
"sonar.core.codeCoveragePlugin"
] =
"jacoco"
28.
props [
"sonar.jacoco.reportPath"
] =
"$ {} buildDirName / jacoco.exec"
29.
}
30.
}
31.
32.
println
(
"i parametri utilizzati Sonar: server.url = '$ {} server.url'; database.url = '$ {} database.url'; database.driverClassName = '$ {} database.driverClassName'; database. username = '$ {database.username}' "
)
33.
34.
}
35.
. 36
sottoprogetti {sottoprogetto ->
37.
38.
...
39.
. 40
/ / Vedere http://www.gradle.org/docs/current/userguide/dependency_management.html# sub: configurazioni
42.
configurazioni {
43.
jacoco
gruppo / / configurazione utilizzata da Sonar per fornire code coverage con JaCoCo
44.
}
45.
46.
/ / dipendenze che sono comuni a tutti i progetti java
47.
dipendenze {
48.
...
49.
jacoco gruppo:
"org.jacoco"
, name:
"org.jacoco.agent"
, versione:
"0.5.3.201107060350"
, classificatore:
"runtime"
50.
...
51.
}
52.
53.
prova {
54.
jvmArgs
"-javaagent:${configurations.jacoco.asPath}=destfile=${buildDir}/jacoco.exec,includes=org.your.project.*"
55.
}
56.
...
57.
}
Nessun commento:
Posta un commento
Nota. Solo i membri di questo blog possono postare un commento.