/* * (C) Copyright 2018 Lukas Morawietz (https://github.com/F43nd1r) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ plugins { id 'java' id 'idea' id 'war' id 'org.springframework.boot' version '2.1.3.RELEASE' id 'com.devsoap.vaadin-flow' version '1.0.0.RC8' id 'io.spring.dependency-management' version '1.0.7.RELEASE' id 'cn.bestwu.propdeps' version '0.0.10' id 'net.researchgate.release' version '2.8.0' } vaadin { version '13.0.0' submitStatistics false } repositories { jcenter() maven { url 'https://maven.google.com' } vaadin.repositories() } group 'com.faendir' sourceCompatibility = 1.8 targetCompatibility = 1.8 ext { generated = file("$buildDir/generated") queryDslOutput = file("$generated/querydsl/java") messagesOutput = file("$generated/faendir/java") } compileJava { doFirst { queryDslOutput.mkdirs() } options.compilerArgs += ['-parameters', '-s', queryDslOutput] } idea { module { sourceDirs += queryDslOutput generatedSourceDirs += queryDslOutput sourceDirs += messagesOutput generatedSourceDirs += messagesOutput } } configurations { all*.exclude module : 'slf4j-simple' } dependencies { //spring implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'mysql:mysql-connector-java' implementation 'org.springframework.boot:spring-boot-starter-security' implementation 'org.springframework.boot:spring-boot-starter-mail' implementation 'org.liquibase:liquibase-core' implementation 'org.yaml:snakeyaml' annotationProcessor 'org.springframework.boot:spring-boot-configuration-processor' providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat' def queryDslVersion = '4.2.1' implementation "com.querydsl:querydsl-jpa:$queryDslVersion" implementation "com.querydsl:querydsl-sql:$queryDslVersion" annotationProcessor "com.querydsl:querydsl-apt:$queryDslVersion:jpa" annotationProcessor "javax.persistence:javax.persistence-api:2.2" annotationProcessor "javax.annotation:javax.annotation-api:1.3.2" implementation "com.fasterxml.jackson.datatype:jackson-datatype-jdk8" //vaadin implementation vaadin.bom() implementation vaadin.platform() implementation vaadin.dependency('icons-flow') implementation vaadin.dependency('spring-boot-starter') implementation 'org.jfree:jfreechart:1.5.0' implementation 'org.apache.xmlgraphics:batik-svggen:1.10' implementation 'javax.servlet:javax.servlet-api:4.0.1' implementation 'org.webjars.bowergithub.simpleelements:simple-dropdown:1.0.0' implementation 'com.faendir.vaadin:jfreechart-flow:1.1.6' //utility implementation 'org.codeartisans:org.json:20161124' implementation 'org.apache.commons:commons-text:1.6' implementation 'org.xbib:time:1.0.0' implementation 'ch.acra:acra-javacore:5.3.0-rc01' implementation 'com.faendir.proguard:retrace:1.3' implementation 'javax.xml.bind:jaxb-api:2.3.1' implementation 'com.github.ziplet:ziplet:2.3.0' implementation 'me.xdrop:fuzzywuzzy:1.2.0' implementation 'com.talanlabs:avatar-generator:1.1.0' implementation 'org.ektorp:org.ektorp.spring:1.5.0' //testing testImplementation 'org.springframework.boot:spring-boot-starter-test' testImplementation 'org.springframework.security:spring-security-test' testImplementation 'com.h2database:h2' testImplementation files('libs/ojdbc6.jar') } compileJava.dependsOn(processResources) war { archiveName = 'acra.war' version = version enabled = true } task generateMessageClasses(type: com.faendir.acra.gradle.I18nClassGenerator) { inputDirectory file('src/main/resources/i18n/com/faendir/acra') outputDirectory messagesOutput packageName 'com.faendir.acra.i18n' className 'Messages' } compileJava.dependsOn(generateMessageClasses) test { testLogging { events "failed" exceptionFormat "full" } } release { failOnUnversionedFiles = false tagTemplate = 'v$version' }