Acrarium/build.gradle
2018-07-30 17:35:39 +02:00

155 lines
4.4 KiB
Groovy

/*
* (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.0.2.RELEASE'
id 'com.devsoap.plugin.vaadin' version '1.3.1'
id 'io.spring.dependency-management' version '1.0.5.RELEASE'
id 'cn.bestwu.propdeps' version '0.0.10'
id 'net.researchgate.release' version '2.6.0'
}
repositories {
jcenter()
maven { url 'https://maven.google.com' }
maven { url 'https://maven.vaadin.com/vaadin-addons' }
}
group 'com.faendir'
sourceCompatibility = 1.8
targetCompatibility = 1.8
ext {
generated = file("$buildDir/generated")
queryDslOutput = file("$generated/querydsl/java")
}
compileJava {
doFirst {
queryDslOutput.mkdirs()
}
options.compilerArgs += ['-parameters', '-s', queryDslOutput]
}
idea {
module {
sourceDirs += queryDslOutput
generatedSourceDirs += queryDslOutput
}
}
vaadin {
version '8.4.2'
push true
}
vaadinCompile {
style 'PRETTY'
outputDirectory 'src/main/resources'
strict true
widgetset 'com.faendir.acra.AppWidgetset'
}
vaadinThemeCompile {
themesDirectory 'src/main/resources/VAADIN/themes'
}
vaadinSuperDevMode {
noserver false
extraArgs ""
}
dependencyManagement {
imports {
mavenBom "com.vaadin:vaadin-bom:${vaadin.version}"
}
}
dependencies {
//spring
compile 'org.springframework.boot:spring-boot-starter-data-jpa'
compile 'mysql:mysql-connector-java'
compile 'org.springframework.boot:spring-boot-starter-security'
compile 'org.springframework:spring-orm'
compile 'org.liquibase:liquibase-core'
compile 'org.yaml:snakeyaml'
optional 'org.springframework.boot:spring-boot-configuration-processor'
providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat'
def queryDslVersion = '4.2.1'
compile "com.querydsl:querydsl-jpa:$queryDslVersion"
compile "com.querydsl:querydsl-sql:$queryDslVersion"
compile "com.querydsl:querydsl-apt:$queryDslVersion:jpa"
//vaadin
compile 'com.vaadin:vaadin-spring-boot-starter'
compile 'com.vaadin:vaadin-push'
compile('org.vaadin.addon:jfreechartwrapper:4.0.0') {
exclude group: 'javax.servlet', module: 'servlet-api'
exclude group: 'jfree'
}
compile 'com.vaadin:vaadin-icons:3.0.1'
compile 'org.jfree:jfreechart:1.5.0'
compile 'javax.servlet:javax.servlet-api:3.1.0'
compile 'org.vaadin.addons:stepper:2.4.0'
//utility
compile 'org.codeartisans:org.json:20161124'
compile 'org.apache.commons:commons-collections4:4.1'
compile 'commons-fileupload:commons-fileupload:1.3.2'
compile 'org.apache.commons:commons-text:1.1'
compile 'org.xbib:time:1.0.0'
compile 'com.faendir.acra:acra-javacore:5.0.0-rc2'
compile 'com.diffplug.durian:durian:3.4.0'
compile 'com.faendir.proguard:retrace:1.3'
compile 'javax.xml.bind:jaxb-api:2.3.0'
compile 'com.github.ziplet:ziplet:2.3.0'
compile 'me.xdrop:fuzzywuzzy:1.1.10'
compile 'com.talanlabs:avatar-generator:1.1.0'
//testing
testCompile 'org.springframework.boot:spring-boot-starter-test'
testCompile 'org.springframework.security:spring-security-test'
testCompile 'com.h2database:h2'
testCompile files('libs/ojdbc6.jar')
}
compileJava.dependsOn(processResources)
war {
archiveName = 'acra.war'
version = version
enabled = true
dependsOn vaadinThemeCompile, vaadinCompile
}
task generateThemeClasses(type: com.faendir.acra.gradle.ThemeClassGenerator) {
themesDirectory file('src/main/resources/VAADIN/themes')
outputDirectory file("$generated/faendir/java")
}
compileJava.dependsOn(generateThemeClasses)
test {
testLogging {
events "failed"
exceptionFormat "full"
}
}
release {
failOnUnversionedFiles = false
tagTemplate = 'v$version'
}