1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103apply plugin: 'groovy'
apply plugin: 'idea'
apply plugin: 'spring-boot'
apply plugin: 'cobertura'
apply plugin: 'com.github.kt3k.coveralls'
buildscript {
repositories {
mavenLocal()
jcenter()
maven { url 'http://repo.spring.io/snapshot' }
maven { url 'http://repo.spring.io/milestone' }
}
dependencies {
classpath 'org.springframework.boot:spring-boot-gradle-plugin:1.2.0.RELEASE'
classpath 'org.springframework:springloaded:1.2.1.RELEASE'
classpath 'org.kt3k.gradle.plugin:coveralls-gradle-plugin:2.0.1'
classpath('net.saliman:gradle-cobertura-plugin:2.0.0') {
exclude module: 'xml-apis'
}
classpath 'xml-apis:xml-apis:1.0.b2'
}
}
jar {
baseName = 'iSonic'
version = '0.1.0'
}
idea {
project {
jdkName = '1.7'
}
module {
name = 'iSonic'
excludeDirs += [file('tmp'), file('gradle'), file('.idea')]
inheritOutputDirs = false
outputDir = file("$buildDir/classes/main/")
downloadJavadoc = false
downloadSources = true
}
}
repositories {
mavenLocal()
jcenter()
maven { url 'http://maven.restlet.org' }
maven { url 'http://repo.spring.io/snapshot' }
maven { url 'http://repo.spring.io/milestone' }
}
dependencies {
compile 'org.codehaus.groovy:groovy-all'
compile 'org.springframework.boot:spring-boot-starter-web'
compile('org.springframework.boot:spring-boot-starter-data-solr')
compile 'org.springframework:spring-context-support'
compile 'org.apache.solr:solr-core:4.10.2'
compile 'org.quartz-scheduler:quartz:2.2.1'
compile 'com.worldsworstsoftware:itunes-utilities:1.1'
testCompile 'junit:junit'
testCompile 'org.springframework:spring-test'
testCompile 'org.spockframework:spock-spring:0.7-groovy-2.0'
testCompile 'cglib:cglib-nodep:2.2'
}
configurations {
all*.exclude group: 'log4j', module: 'log4j'
all*.exclude group: 'xml-apis', module: 'xml-apis'
}
bootRun {
// Allows parameters to be passed to the application. Ex:
// -PbootArgs="-Dspring.profiles.active=external-solr"
if (project.hasProperty('bootArgs')) {
jvmArgs project.bootArgs.split('\\s+')
}
}
task wrapper(type: Wrapper) {
gradleVersion = '2.2'
}
sourceSets {
integTest {
compileClasspath += main.output + test.output
runtimeClasspath += main.output + test.output
}
}
configurations {
integTestCompile.extendsFrom testCompile
integTestRuntime.extendsFrom testRuntime
}
task integTest(type: Test) {
testClassesDir = sourceSets.integTest.output.classesDir
classpath = sourceSets.integTest.runtimeClasspath
}
check.dependsOn -= integTest
cobertura.coverageFormats = ['html', 'xml'] // coveralls plugin depends on xml format report
cobertura.coverageSourceDirs = sourceSets.main.groovy.srcDirs