sonarqube { properties { property 'sonar.projectName', "${projectTitle} :: Scanner :: Protocol" property 'sonar.exclusions', 'src/main/java/org/sonar/scanner/protocol/viewer/**' } } dependencies { // please keep the list ordered compile 'com.google.code.gson:gson' compile 'com.google.protobuf:protobuf-java' compile 'commons-io:commons-io' compile 'commons-lang:commons-lang' compile project(':sonar-core') compileOnly 'com.google.code.findbugs:jsr305' testCompile 'com.google.guava:guava' testCompile 'junit:junit' testCompile 'org.assertj:assertj-core' } //create a single Jar with all dependencies task fatJar(type: Jar) { manifest { attributes 'Main-Class': 'org.sonar.scanner.protocol.viewer.ScannerReportViewerApp' } archiveBaseName = project.name + '-all' from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } with jar duplicatesStrategy = DuplicatesStrategy.EXCLUDE } build.dependsOn fatJar // Used by sonar-db-core to run DB Unit Tests artifactoryPublish.skip = false publishing { publications { mavenJava(MavenPublication) { from components.java if (release) { artifact sourcesJar artifact javadocJar } } } }