From 9d0a0348cc76e10620a5fd87d15dd111dead82c2 Mon Sep 17 00:00:00 2001 From: Vyacheslav Rusakov Date: Mon, 4 Jan 2016 19:11:40 +0600 Subject: [PATCH] update build --- .yo-rc.json | 2 +- build-deps.gradle | 28 -- build.gradle | 164 +++++----- gradle/bintray.gradle | 35 -- gradle/build.gradle | 34 -- gradle/buildscript.gradle | 16 - .../checkstyle/checkstyle-noframes-sorted.xsl | 179 ---------- gradle/config/checkstyle/checkstyle.xml | 165 ---------- gradle/config/findbugs/exclude.xml | 9 - gradle/config/findbugs/plain.xsl | 306 ------------------ gradle/config/pmd/pmd.xml | 136 -------- gradle/github.gradle | 20 -- gradle/maven.gradle | 68 ---- gradle/quality.gradle | 166 ---------- gradle/release.gradle | 28 -- gradle/wrapper/gradle-wrapper.jar | Bin 53636 -> 53636 bytes gradle/wrapper/gradle-wrapper.properties | 4 +- gradlew | 10 +- .../vyarus/dropwizard/guice/GuiceBundle.java | 2 +- .../jersey/provider/ProviderReporter.java | 2 +- .../feature/plugin/PluginInstaller.java | 1 - .../installer/internal/FeaturesHolder.java | 1 - .../installer/scanner/ClasspathScanner.java | 2 +- .../module/installer/util/JerseyBinding.java | 1 - 24 files changed, 101 insertions(+), 1278 deletions(-) delete mode 100644 build-deps.gradle delete mode 100644 gradle/bintray.gradle delete mode 100644 gradle/build.gradle delete mode 100644 gradle/buildscript.gradle delete mode 100644 gradle/config/checkstyle/checkstyle-noframes-sorted.xsl delete mode 100644 gradle/config/checkstyle/checkstyle.xml delete mode 100644 gradle/config/findbugs/exclude.xml delete mode 100644 gradle/config/findbugs/plain.xsl delete mode 100644 gradle/config/pmd/pmd.xml delete mode 100644 gradle/github.gradle delete mode 100644 gradle/maven.gradle delete mode 100644 gradle/quality.gradle delete mode 100644 gradle/release.gradle diff --git a/.yo-rc.json b/.yo-rc.json index e014d956..850b9776 100644 --- a/.yo-rc.json +++ b/.yo-rc.json @@ -15,6 +15,6 @@ "bintraySignFiles": true, "mavenCentralSync": true, "enableQualityChecks": true, - "usedGeneratorVersion": "1.1.4" + "usedGeneratorVersion": "2.0.0" } } \ No newline at end of file diff --git a/build-deps.gradle b/build-deps.gradle deleted file mode 100644 index c2f86ce9..00000000 --- a/build-deps.gradle +++ /dev/null @@ -1,28 +0,0 @@ -repositories { - jcenter() - mavenCentral() - mavenLocal() -} - -ext { - dropwizard = '0.8.5' - guice = '4.0' -} - -dependencies { - provided 'junit:junit:4.12' - provided "io.dropwizard:dropwizard-testing:$dropwizard" - provided 'org.spockframework:spock-core:1.0-groovy-2.4' - provided 'com.google.code.findbugs:annotations:3.0.1' - - compile "com.google.inject.extensions:guice-servlet:$guice" - compile "com.google.inject.extensions:guice-multibindings:$guice" - compile "io.dropwizard:dropwizard-core:$dropwizard" - compile 'org.glassfish.hk2:guice-bridge:2.4.0-b31' - compile 'ru.vyarus:generics-resolver:2.0.0' - - testCompile "io.dropwizard:dropwizard-auth:$dropwizard" - testCompile 'cglib:cglib-nodep:3.1' - testCompile 'org.codehaus.groovy.modules.http-builder:http-builder:0.7.2' - testCompile 'com.github.stefanbirkner:system-rules:1.9.0' -} \ No newline at end of file diff --git a/build.gradle b/build.gradle index 36667dd7..4d416cac 100644 --- a/build.gradle +++ b/build.gradle @@ -1,93 +1,113 @@ -buildscript { - apply from: "gradle/buildscript.gradle", to: buildscript +plugins { + id 'groovy' + id 'jacoco' + id 'project-report' + id 'ru.vyarus.java-lib' version '1.0.1' + id 'ru.vyarus.github-info' version '1.0.0' + id 'ru.vyarus.animalsniffer' version '1.0.0' + id 'ru.vyarus.quality' version '1.2.0' + id 'com.github.kt3k.coveralls' version '2.4.0x' + id 'com.jfrog.bintray' version '1.5' + id 'net.researchgate.release' version '2.3.4' + id 'com.github.ben-manes.versions' version '0.11.3' } -group = 'ru.vyarus' -description = 'Dropwizard guice integration' +sourceCompatibility = 1.7 +targetCompatibility = 1.7 -// convention: project.name == github project name == bintray package page -project.ext { - build = { - gradle = 2.8 - java = 1.7 - // if not empty runs animal sniffer on compile to guarantee binary compatibility; set '' to disable - signature = 'org.codehaus.mojo.signature:java17:+@signature' - strictQualityCheck = true // true to fail build on quality plugins warnings - } - github = { - user = 'xvik' - } - bintray = { - user = project.hasProperty('bintrayUser') ? bintrayUser : 'USER' // configured in ~/.gradle/gradle.properties - key = project.hasProperty('bintrayKey') ? bintrayKey : 'KEY' // configured in ~/.gradle/gradle.properties - repo = 'xvik' - tags = ['dropwizard', 'guice'] - dryRun = false // whether to run this as dry-run, without deploying (TEST RUN) - publish = true //If version should be auto published after an upload +wrapper { + gradleVersion = 2.10 +} - signFiles = true // true to gpg sign files on bintray (certificate must be installed on bintray account) - gpgPassphrase = project.hasProperty('gpgPassphrase') ? gpgPassphrase : '' // optionally configured in ~/.gradle/gradle.properties if certificate requires it +ext { + dropwizard = '0.8.5' + guice = '4.0' +} - mavenCentralSync = true // true to sync with maven central (files signing required) - ossUser = project.hasProperty('sonatypeUser') ? sonatypeUser : 'USER' // configured in ~/.gradle/gradle.properties - ossPassword = project.hasProperty('sonatypePassword') ? sonatypePassword : 'PASSWORD' // configured in ~/.gradle/gradle.properties - } +repositories { jcenter(); mavenCentral(); mavenLocal() } +dependencies { + signature 'org.codehaus.mojo.signature:java17:+@signature' + + provided 'junit:junit:4.12' + provided "io.dropwizard:dropwizard-testing:$dropwizard" + provided 'org.spockframework:spock-core:1.0-groovy-2.4' + provided 'com.google.code.findbugs:annotations:3.0.1' + + compile "com.google.inject.extensions:guice-servlet:$guice" + compile "com.google.inject.extensions:guice-multibindings:$guice" + compile "io.dropwizard:dropwizard-core:$dropwizard" + compile 'org.glassfish.hk2:guice-bridge:2.4.0-b31' + compile 'ru.vyarus:generics-resolver:2.0.1' + + testCompile "io.dropwizard:dropwizard-auth:$dropwizard" + testCompile 'cglib:cglib-nodep:3.1' + testCompile 'org.codehaus.groovy.modules.http-builder:http-builder:0.7.2' + testCompile 'com.github.stefanbirkner:system-rules:1.9.0' +} + +group = 'ru.vyarus' +description = 'Dropwizard guice integration' + +github { + user = 'xvik' license = 'MIT' - licenseDesc = 'The MIT License' - // extend pom for maven central acceptance - pomConfig = { - scm { - url github.scm - connection github.scmConnection - developerConnection github.scmConnection +} + +pom { + developers { + developer { + id "xvik" + name "Vyacheslav Rusakov" + email "vyarus@gmail.com" } - licenses { - license { - name licenseDesc - url github.licenseUrl - distribution "repo" + } +} + +bintray { + user = project.hasProperty('bintrayUser') ? bintrayUser : 'USER' + key = project.hasProperty('bintrayKey') ? bintrayKey : 'KEY' + publications = ['maven'] + dryRun = false + publish = true + pkg { + repo = 'xvik' + name = project.name + desc = project.description + labels = ['dropwizard', 'guice'] + publicDownloadNumbers = true + version { + gpg { + sign = true + passphrase = project.hasProperty('gpgPassphrase') ? gpgPassphrase : '' } - } - developers { - developer { - id "xvik" - name "Vyacheslav Rusakov" - email "vyarus@gmail.com" + mavenCentralSync { + sync = true + user = project.hasProperty('sonatypeUser') ? sonatypeUser : 'USER' + password = project.hasProperty('sonatypePassword') ? sonatypePassword : 'PASSWORD' } } } } -apply plugin: 'java' -apply plugin: 'groovy' -apply plugin: 'com.github.ben-manes.versions' -apply plugin: 'project-report' - -apply from: 'gradle/build.gradle' -apply from: 'gradle/github.gradle' -apply from: 'gradle/bintray.gradle' -apply from: 'gradle/release.gradle' -apply from: 'gradle/maven.gradle' -apply from: 'gradle/quality.gradle' +afterReleaseBuild { + dependsOn = [bintrayUpload] + doLast { + logger.warn "RELEASED $project.group:$project.name:$project.version" + } +} -apply from: 'build-deps.gradle' +test { + testLogging { + events "skipped", "failed", "standard_error" + exceptionFormat "full" + } + maxHeapSize = "512m" +} dependencyUpdates.revision = 'release' +jacocoTestReport.reports.xml.enabled = true task showDependenciesTree(dependsOn: 'htmlDependencyReport', group: 'help', description: 'Generates dependencies tree report and opens it in browser') << { java.awt.Desktop.getDesktop().open(file('/build/reports/project/dependencies/root.html')) } - -task install(dependsOn: 'publishMavenJavaPublicationToMavenLocal', group: 'publishing', - description: 'Install to local maven repository') << { - logger.warn "INSTALLED $project.group:$project.name:$project.version" -} - -/* -Tasks hint: - - dependencyUpdates: checks available dependencies updates - - dependencies: print dependencies tree in console - - check: run quality checks and tests - - release: release version -*/ diff --git a/gradle/bintray.gradle b/gradle/bintray.gradle deleted file mode 100644 index c1401bef..00000000 --- a/gradle/bintray.gradle +++ /dev/null @@ -1,35 +0,0 @@ -apply plugin: 'com.jfrog.bintray' - -// hack: without it bintray property is not visible (???!) -logger.debug("$project.ext.bintray") -def bintrayCfg = project.ext.bintray - -bintray { - user = bintrayCfg.user - key = bintrayCfg.key - publications = ['mavenJava'] // see publications closure - dryRun = bintrayCfg.dryRun - publish = bintrayCfg.publish - pkg { //package will be created if does not exist - repo = bintrayCfg.repo -// userOrg = 'myorg' // an optional organization name when the repo belongs to one of the user's orgs - name = project.name - desc = project.description - websiteUrl = github.site - issueTrackerUrl = github.tracker - vcsUrl = github.scm - licenses = [license] - labels = bintrayCfg.tags - version { - gpg { - sign = bintrayCfg.signFiles - passphrase = bintrayCfg.gpgPassphrase - } - mavenCentralSync { - sync = bintrayCfg.mavenCentralSync - user = bintrayCfg.ossUser - password = bintrayCfg.ossPassword - } - } - } -} \ No newline at end of file diff --git a/gradle/build.gradle b/gradle/build.gradle deleted file mode 100644 index 0de86eba..00000000 --- a/gradle/build.gradle +++ /dev/null @@ -1,34 +0,0 @@ -// hack: without it build property is not visible (???!) -logger.debug("$project.ext.build") -def buildCfg = project.ext.build - -// compatibility required only for main classes - test don't need restrictions -compileJava { - sourceCompatibility = buildCfg.java - targetCompatibility = buildCfg.java -} - -// optional and provided scopes, but they must be supported manually (see pom rendering) -configurations { - provided - optional - compile.extendsFrom provided, optional -} - -boolean signatureSet = buildCfg.signature -if (signatureSet) { - apply plugin: 'be.insaneprogramming.gradle.animalsniffer' - - animalsniffer { - signature = buildCfg.signature - ignores = [] // list of packages to ignore - annotations = [] // supported annotations to signal Animal Sniffer to ignore annotated elements - excludeDependencies = true // only disable if you have signatures for all dependencies! - skip = false // skip animal sniffer tasks - runForTests = false // run animal sniffer for test classes as well - } -} - -task wrapper(type: Wrapper, group: 'build setup') { - gradleVersion = buildCfg.gradle -} \ No newline at end of file diff --git a/gradle/buildscript.gradle b/gradle/buildscript.gradle deleted file mode 100644 index 6af14685..00000000 --- a/gradle/buildscript.gradle +++ /dev/null @@ -1,16 +0,0 @@ -// external file maintains build classpath for all scripts -// (to overcome buildscipt gradle limitation and define all plugins in one place) -repositories { - jcenter() - mavenCentral() -} -dependencies { - // bintray upload - classpath "com.jfrog.bintray.gradle:gradle-bintray-plugin:1.4" - // coveralls integration - classpath "org.kt3k.gradle.plugin:coveralls-gradle-plugin:2.4.0" - // check dependencies updates - classpath "com.github.ben-manes:gradle-versions-plugin:0.11.3" - classpath 'net.researchgate:gradle-release:2.3.0' - classpath "be.insaneprogramming.gradle:animalsniffer-gradle-plugin:1.4.0" -} \ No newline at end of file diff --git a/gradle/config/checkstyle/checkstyle-noframes-sorted.xsl b/gradle/config/checkstyle/checkstyle-noframes-sorted.xsl deleted file mode 100644 index da6a6516..00000000 --- a/gradle/config/checkstyle/checkstyle-noframes-sorted.xsl +++ /dev/null @@ -1,179 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -

CheckStyle Audit

Designed for use with CheckStyle and Ant.
-
- - - -
- - - -
- - - - -
- - - - -
- - - - -

Files

- - - - - - - - - - - - - - - -
NameErrors
-
- - - - -

File

- - - - - - - - - - - - - - -
Error DescriptionLine
- Back to top -
- - - -

Summary

- - - - - - - - - - - - -
FilesErrors
-
- - - - a - b - - -
- - diff --git a/gradle/config/checkstyle/checkstyle.xml b/gradle/config/checkstyle/checkstyle.xml deleted file mode 100644 index a45d0e07..00000000 --- a/gradle/config/checkstyle/checkstyle.xml +++ /dev/null @@ -1,165 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/gradle/config/findbugs/exclude.xml b/gradle/config/findbugs/exclude.xml deleted file mode 100644 index 5d72336c..00000000 --- a/gradle/config/findbugs/exclude.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/gradle/config/findbugs/plain.xsl b/gradle/config/findbugs/plain.xsl deleted file mode 100644 index 80fff8d7..00000000 --- a/gradle/config/findbugs/plain.xsl +++ /dev/null @@ -1,306 +0,0 @@ - - - - - - - - - Warning - Priority - Details - - - - - - - FindBugs Report - - - - - - - -

FindBugs Report

-

Produced using FindBugs .

-

Project: - - - - -

-

Metrics

- - -

Summary

- - - - - - - - - - - - tablerow0 - tablerow1 - - - - - - - - - - - tablerow0 - tablerow1 - - - - - - -
Warning TypeNumber
Warnings
Total
-



- -

Warnings

- -

Click on each warning link to see a full description of the issue, and - details of how to resolve it.

- - - - - - - - - Warnings - Warnings_ - - - -



-

Warning Types

- - - - - - - - -
- - - - - - - - - - - High - Medium - Low - Unknown - - - -



- - - -
In file , - - - line - - - lines - to - - -
- - -
-
-

- - -
- - -

- -



-
- - - - - - -

- - - - - - - - - - - - - - -

None

-



-
- - - - - -

lines of code analyzed, - in classes, - in packages.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
MetricTotalDensity*
High Priority Warnings - - - - - - - - -
Medium Priority Warnings - - - - - - - - -
Low Priority Warnings - - - - - - - - -
Total Warnings - - - - - - - - - - -
-

(* Defects per Thousand lines of non-commenting source statements)

-



- -
- -
diff --git a/gradle/config/pmd/pmd.xml b/gradle/config/pmd/pmd.xml deleted file mode 100644 index 4f69fbac..00000000 --- a/gradle/config/pmd/pmd.xml +++ /dev/null @@ -1,136 +0,0 @@ - - - - Based on Juan Roperto's ruleset (https://github.com/jroperto) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/gradle/github.gradle b/gradle/github.gradle deleted file mode 100644 index 4ed227aa..00000000 --- a/gradle/github.gradle +++ /dev/null @@ -1,20 +0,0 @@ -// hack: without it github property is not visible (???!) -logger.debug("$project.ext.github") - -// generate additional properties -github.site = "https://github.com/$github.user/$project.name" -github.tracker = "https://github.com/$github.user/$project.name/issues" -github.scm = "https://github.com/$github.user/${project.name}.git" -github.scmConnection = "scm:git:git://github.com/$github.user/${project.name}.git" -github.licenseUrl = "https://raw.githubusercontent.com/$github.user/${project.name}/master/LICENSE" - -apply plugin: 'jacoco' -apply plugin: 'com.github.kt3k.coveralls' - -// jococo report send to coveralls by travis -jacocoTestReport { - reports { - xml.enabled = true // coveralls plugin depends on xml format report - html.enabled = true - } -} \ No newline at end of file diff --git a/gradle/maven.gradle b/gradle/maven.gradle deleted file mode 100644 index c1cee7f7..00000000 --- a/gradle/maven.gradle +++ /dev/null @@ -1,68 +0,0 @@ -apply plugin: 'maven-publish' - -publishing { - publications { - mavenJava(MavenPublication) { - if (plugins.hasPlugin('war')) { - from components.web - } else { - from components.java - } - - artifact sourcesJar - artifact javadocJar - - pom.withXml { - // gradle sets runtime scope for all dependencies.. fixing - asNode().dependencies.'*'.findAll() { - it.scope.text() == 'runtime' && project.configurations.compile.allDependencies.find { dep -> - dep.name == it.artifactId.text() - } - }.each() { - it.scope*.value = 'compile' - } - - asNode().dependencies.'*'.findAll() { - project.configurations.optional.allDependencies.find { dep -> - dep.name == it.artifactId.text() - } - }.each() { - it.scope*.value = 'compile' - it.appendNode('optional', 'true') - } - - asNode().dependencies.'*'.findAll() { - project.configurations.provided.allDependencies.find { dep -> - dep.name == it.artifactId.text() - } - }.each() { - it.scope*.value = 'provided' - } - - def root = asNode() - root.appendNode('name', project.name) - root.appendNode('description', project.description) - root.appendNode('url', github.site) - root.children().last() + pomConfig - - asNode().scm[0].appendNode('tag', project.version.replaceAll('-SNAPSHOT', '')) - } - } - } -} - - -task sourcesJar(type: Jar, dependsOn: classes, group: 'build') { - classifier = 'sources' - from sourceSets.main.allSource -} - -task javadocJar(type: Jar, dependsOn: javadoc, group: 'build') { - classifier = 'javadoc' - from javadoc.destinationDir -} - -artifacts { - archives sourcesJar - archives javadocJar -} \ No newline at end of file diff --git a/gradle/quality.gradle b/gradle/quality.gradle deleted file mode 100644 index 05cd7a9b..00000000 --- a/gradle/quality.gradle +++ /dev/null @@ -1,166 +0,0 @@ -/* Quality plugins checks applied during "gradle check" execution, so travis build will fail in case of quality problems - * and its better to call check manually before push. */ - -// hack: without it build property is not visible (???!) -logger.debug("$project.ext.build") -boolean ignoreFailuresCfg = !project.ext.build.strictQualityCheck - -// enable detailed warnings (all options http://docs.oracle.com/javase/8/docs/technotes/tools/windows/javac.html#BHCJCABJ) -compileJava.options.compilerArgs << "-Xlint:deprecation" << "-Xlint:unchecked" - -apply plugin: 'findbugs' - -// findbugs 3 supports java 8, but requires java 7! -// if you need java 6 support use 2.0.3 version -findbugs { - toolVersion = "3.0.1" - ignoreFailures = ignoreFailuresCfg - sourceSets = [sourceSets.main] - effort = "max" - reportLevel = "medium" - excludeFilter = file("gradle/config/findbugs/exclude.xml") -} - -// extended xml report is required to build pretty console output (also, can't generate both xml and html report) -findbugsMain.reports { - xml { - enabled true - withMessages true - } -} - -findbugsTest.reports { - xml { - enabled true - withMessages true - } -} - -gradle.taskGraph.afterTask { Task task, TaskState state -> - if ((task.name == 'findbugsMain' || task.name == 'findbugsTest')) { - def findbugsType = task.name == 'findbugsMain' ? 'main' : 'test' - - // print findbugs errors - def outFile = findbugsType + '.xml' - def reportFile = file("${buildDir}/reports/findbugs/${outFile}") - - if (reportFile.exists()) { - def result = new XmlParser().parse(reportFile) - - def desc = [:] - result.BugPattern.each { pattern -> - desc[pattern.'@type'] = ' ' + pattern.Details[0].text() - //remove html tags - .replaceAll("<(.|\n)*?>", '') - // remove empty lines after tags remove (only one separator lne remain) - .replaceAll("( *\n){3,}", '\n\n') - // reduce left indents - .replaceAll(" {2,}", ' ') - // indent all not indented lines - .replaceAll("\n([^ ])", '\n $1').trim() - } - def cat = [:] - result.BugCategory.each { category -> - cat[category.'@category'] = category.Description[0].text() - } - result.BugInstance.each { bug -> - println '' - def msg = bug.LongMessage[0] - def src = bug.SourceLine[0] - logger.error "[${cat[bug.'@category']}] ${src.'@sourcepath'}:${src.'@start'}:${src.'@end'} ${msg.text()} [${bug.'@type'}]\n${desc[bug.'@type']}" - } - if (result.BugInstance.size() > 0) - println '' - } - - if (file("$buildDir/reports/findbugs/${findbugsType}.xml").exists()) { - def htmlReportPath = "$buildDir/reports/findbugs/${findbugsType}.html" - ant.xslt(in: "$buildDir/reports/findbugs/${findbugsType}.xml", - style: "gradle/config/findbugs/plain.xsl", - out: htmlReportPath - ) - if (state.failure) { - logger.error("Findbugs HTML report: file:///${file(htmlReportPath).canonicalPath.replaceAll("\\\\", "/")}") - } - } - } -} - - -apply plugin: 'pmd' - -pmd { - toolVersion = "5.4.0" - ignoreFailures = ignoreFailuresCfg - ruleSetFiles = files("gradle/config/pmd/pmd.xml") - sourceSets = [sourceSets.main] -} - -gradle.taskGraph.afterTask { Task task, TaskState state -> - if ((task.name == 'pmdMain' || task.name == 'pmdTest')) { - // print pmd errors - def outFile = task.name == 'pmdMain' ? 'main.xml' : 'test.xml' - def reportFile = file("${buildDir}/reports/pmd/${outFile}") - - if (reportFile.exists()) { - def result = new XmlParser().parse(reportFile) - - result.file.each { file -> - if (file.violation.size() >0) - println '' - file.violation.each { violation -> - logger.error "${file.'@name'}:${violation.'@beginline'}:${violation.'@endline'} ${violation.text()}${violation.'@externalInfoUrl'}\n" - } - } - } - } -} - - -apply plugin: 'checkstyle' - -// Note: checkstyle 6.2 requires jdk7 or above. For jdk6 use older version (6.1.1) -checkstyle { - toolVersion = "6.11.2" - ignoreFailures = ignoreFailuresCfg - sourceSets = [sourceSets.main] - configFile = file('gradle/config/checkstyle/checkstyle.xml') -} - -def checkType; -task checkstyleReport << { - def report = "$buildDir/reports/checkstyle/${checkType}.xml" - if (file(report).exists()) { - def hasErrors = new XmlParser().parse(file(report)).find{ file -> file.error} - if (hasErrors) { - def htmlReportPath = "$buildDir/reports/checkstyle/${checkType}.html" - ant.xslt(in: report, - style: "gradle/config/checkstyle/checkstyle-noframes-sorted.xsl", - out: htmlReportPath - ) - logger.error("Checkstyle HTML report: file:///${file(htmlReportPath).canonicalPath.replaceAll("\\\\", "/")}") - } - } -} - -gradle.taskGraph.afterTask { Task task, TaskState state -> - if (task.name in ['checkstyleMain', 'checkstyleTest']) { - checkstyleReport { - def matcher = task.name =~ /^checkstyle(.*)$/ - if (matcher.matches()) { - checkType = matcher.group(1).toLowerCase() - } - } - checkstyleReport.execute() - } -} - -// configure tests to show additional info in logs -// important for travis build to quickly see failure cause -// see http://www.gradle.org/docs/current/dsl/org.gradle.api.tasks.testing.Test.html#org.gradle.api.tasks.testing.Test:testLogging -test { - testLogging { - events "skipped", "failed", "standardError" - exceptionFormat "full" - } -} \ No newline at end of file diff --git a/gradle/release.gradle b/gradle/release.gradle deleted file mode 100644 index 40fa9aba..00000000 --- a/gradle/release.gradle +++ /dev/null @@ -1,28 +0,0 @@ -// release plugin fails if git repository not found, so we have to simply not register it until git repo will be available -if (file("$project.rootDir/.git").exists()) { - apply plugin: 'net.researchgate.release' - -// confirmReleaseVersion will remove the -SNAPSHOT, but the jar task are already configured with the SNAPSHOT name - confirmReleaseVersion << { - publishing.publications.mavenJava.version = project.version - jar.version = project.version - javadocJar.version = project.version - sourcesJar.version = project.version - publishing.publications.mavenJava.setArtifacts([jar, sourcesJar, javadocJar]) - - // reset bintray versions - if (bintrayUpload.versionName.contains('SNAPSHOT')) { - bintrayUpload.versionName = project.version - } - if (bintrayUpload.versionVcsTag.contains('SNAPSHOT')) { - bintrayUpload.versionVcsTag = project.version - } - } - - afterReleaseBuild.dependsOn bintrayUpload - afterReleaseBuild.doLast { - logger.warn "RELEASED $project.group:$project.name:$project.version" - } -} else { - logger.warn("Git repository not initialized, release plugin disabled"); -} diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index fd7e590e5154e82211909581e71018372134fb27..941144813d241db74e1bf25b6804c679fbe7f0a3 100644 GIT binary patch delta 8671 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 +cd "`dirname \"$PRG\"`/" >/dev/null APP_HOME="`pwd -P`" -cd "$SAVED" >&- +cd "$SAVED" >/dev/null CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar @@ -114,6 +109,7 @@ fi if $cygwin ; then APP_HOME=`cygpath --path --mixed "$APP_HOME"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` # We build the pattern for arguments to be converted via cygpath ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` diff --git a/src/main/java/ru/vyarus/dropwizard/guice/GuiceBundle.java b/src/main/java/ru/vyarus/dropwizard/guice/GuiceBundle.java index 93b27696..0c92a74e 100644 --- a/src/main/java/ru/vyarus/dropwizard/guice/GuiceBundle.java +++ b/src/main/java/ru/vyarus/dropwizard/guice/GuiceBundle.java @@ -72,7 +72,7 @@ * @author Vyacheslav Rusakov * @since 31.08.2014 */ -@SuppressWarnings("PMD.ExcessiveClassLength") +@SuppressWarnings("PMD.ExcessiveImports") public final class GuiceBundle implements ConfiguredBundle { private final Logger logger = LoggerFactory.getLogger(GuiceBundle.class); diff --git a/src/main/java/ru/vyarus/dropwizard/guice/module/installer/feature/jersey/provider/ProviderReporter.java b/src/main/java/ru/vyarus/dropwizard/guice/module/installer/feature/jersey/provider/ProviderReporter.java index 6f96ef84..71a97598 100644 --- a/src/main/java/ru/vyarus/dropwizard/guice/module/installer/feature/jersey/provider/ProviderReporter.java +++ b/src/main/java/ru/vyarus/dropwizard/guice/module/installer/feature/jersey/provider/ProviderReporter.java @@ -112,7 +112,7 @@ private void reportGroup(final String title, final Collection items) { /** * Extension point descriptor. */ - @SuppressWarnings({"checkstyle:visibilitymodifier", "PMD.AbstractClassWithoutAnyMethod"}) + @SuppressWarnings("checkstyle:VisibilityModifier") private static class ExtDescriptor { public String name; public String format; diff --git a/src/main/java/ru/vyarus/dropwizard/guice/module/installer/feature/plugin/PluginInstaller.java b/src/main/java/ru/vyarus/dropwizard/guice/module/installer/feature/plugin/PluginInstaller.java index 7fc3fc3b..d3af565d 100644 --- a/src/main/java/ru/vyarus/dropwizard/guice/module/installer/feature/plugin/PluginInstaller.java +++ b/src/main/java/ru/vyarus/dropwizard/guice/module/installer/feature/plugin/PluginInstaller.java @@ -56,7 +56,6 @@ public void install(final Binder binder, final Class type, fina } } - @SuppressWarnings("PMD.UnusedPrivateMethod") private void registerNamedPlugin(final Binder binder, final Class pluginType, final Class keyType, final Class plugin, final K key) { MapBinder.newMapBinder(binder, keyType, pluginType).addBinding(key).to(plugin); diff --git a/src/main/java/ru/vyarus/dropwizard/guice/module/installer/internal/FeaturesHolder.java b/src/main/java/ru/vyarus/dropwizard/guice/module/installer/internal/FeaturesHolder.java index 4ff38e24..8320ee57 100644 --- a/src/main/java/ru/vyarus/dropwizard/guice/module/installer/internal/FeaturesHolder.java +++ b/src/main/java/ru/vyarus/dropwizard/guice/module/installer/internal/FeaturesHolder.java @@ -68,7 +68,6 @@ public List> getFeatures(final Class instal * Installer must implement {@link ru.vyarus.dropwizard.guice.module.installer.order.Ordered} otherwise * no order appear. */ - @SuppressWarnings("PMD.UseCollectionIsEmpty") public void order() { final OrderComparator comparator = new OrderComparator(); for (Class installer : installerTypes) { diff --git a/src/main/java/ru/vyarus/dropwizard/guice/module/installer/scanner/ClasspathScanner.java b/src/main/java/ru/vyarus/dropwizard/guice/module/installer/scanner/ClasspathScanner.java index 79597400..950fad37 100644 --- a/src/main/java/ru/vyarus/dropwizard/guice/module/installer/scanner/ClasspathScanner.java +++ b/src/main/java/ru/vyarus/dropwizard/guice/module/installer/scanner/ClasspathScanner.java @@ -30,7 +30,7 @@ public ClasspathScanner(final Set packages) { */ public void scan(final ClassVisitor visitor) { for (String pkg : packages) { - List> found; + final List> found; try { found = OReflectionHelper.getClassesFor(pkg, Thread.currentThread().getContextClassLoader()); } catch (ClassNotFoundException e) { diff --git a/src/main/java/ru/vyarus/dropwizard/guice/module/installer/util/JerseyBinding.java b/src/main/java/ru/vyarus/dropwizard/guice/module/installer/util/JerseyBinding.java index 32ce2df0..34772487 100644 --- a/src/main/java/ru/vyarus/dropwizard/guice/module/installer/util/JerseyBinding.java +++ b/src/main/java/ru/vyarus/dropwizard/guice/module/installer/util/JerseyBinding.java @@ -24,7 +24,6 @@ * @author Vyacheslav Rusakov * @since 21.11.2014 */ -@SuppressWarnings("PMD.AvoidDuplicateLiterals") public final class JerseyBinding { private JerseyBinding() {