117 lines
2.7 KiB
Groovy
117 lines
2.7 KiB
Groovy
apply plugin: 'java'
|
|
apply plugin: 'idea'
|
|
apply plugin: 'application'
|
|
|
|
defaultTasks 'deploy'
|
|
|
|
version = '0.6'
|
|
|
|
def packageName = 'net.thauvin.erik.mobibot'
|
|
def deployDir = 'deploy'
|
|
def isRelease = 'release' in gradle.startParameter.taskNames
|
|
|
|
mainClassName = packageName + '.Mobibot'
|
|
[compileJava, compileTestJava]*.options*.encoding = 'UTF-8'
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
compile 'log4j:log4j:1.2.17@jar'
|
|
|
|
compile 'pircbot:pircbot:1.5.0'
|
|
|
|
compile 'commons-codec:commons-codec:1.10'
|
|
compile 'commons-logging:commons-logging:1.2'
|
|
compile 'commons-net:commons-net:1.4.1'
|
|
compile 'commons-cli:commons-cli:1.2'
|
|
compile 'commons-httpclient:commons-httpclient:3.1'
|
|
|
|
compile 'oro:oro:2.0.8'
|
|
|
|
compile 'org.jdom:jdom:1.1.3'
|
|
compile 'org.jsoup:jsoup:1.8.3'
|
|
compile 'rome:rome:1.0@jar'
|
|
compile 'rome:rome-fetcher:1.0@jar'
|
|
compile 'org.json:json:20150729'
|
|
compile 'org.ostermiller:utils:1.07.00'
|
|
|
|
compile 'net.sourceforge.jweather:jweather:0.3.0@jar'
|
|
compile 'net.objecthunter:exp4j:0.4.5'
|
|
|
|
compile 'org.twitter4j:twitter4j-core:4.0.4'
|
|
compile 'net.sf.delicious-java:delicious:1.14'
|
|
|
|
//compile fileTree(dir: 'lib', include: '*.jar')
|
|
//compile files('../path/to/example.jar')
|
|
}
|
|
|
|
compileJava {
|
|
doFirst {
|
|
if (isRelease)
|
|
{
|
|
ant.taskdef(name: 'jreleaseinfo',
|
|
classname: 'ch.oscg.jreleaseinfo.anttask.JReleaseInfoAntTask',
|
|
classpath: 'ant/jreleaseinfo-1.3.0.jar')
|
|
ant.jreleaseinfo(targetDir: file('src/main/java'),
|
|
className: 'ReleaseInfo',
|
|
packageName: packageName,
|
|
project: rootProject.name,
|
|
version: version,
|
|
buildnumfile: file('buildnum.properties'))
|
|
|
|
}
|
|
|
|
}
|
|
options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
|
|
}
|
|
|
|
javadoc {
|
|
options.tags = ['created']
|
|
}
|
|
|
|
jar {
|
|
manifest.attributes('Main-Class': mainClassName,
|
|
'Class-Path': '. ./lib/' + configurations.compile.collect { it.getName() }.join(' ./lib/'))
|
|
|
|
version = null
|
|
}
|
|
|
|
clean {
|
|
delete deployDir
|
|
}
|
|
|
|
task wrapper(type: Wrapper) {
|
|
gradleVersion = gradle.gradleVersion
|
|
}
|
|
|
|
task copyToDeploy(type: Copy) {
|
|
from('properties') {
|
|
include '*.properties'
|
|
}
|
|
from jar
|
|
into deployDir
|
|
}
|
|
|
|
task copyToDeployLib(type: Copy) {
|
|
from configurations.runtime
|
|
into deployDir + '/lib'
|
|
}
|
|
|
|
task deploy(dependsOn: ['build']) {
|
|
description = "Copies all needed files to the ${deployDir} directory."
|
|
group = "Publishing"
|
|
outputs.dir deployDir
|
|
inputs.files copyToDeploy
|
|
inputs.files copyToDeployLib
|
|
doLast {
|
|
file(deployDir + '/logs').mkdir()
|
|
}
|
|
mustRunAfter clean
|
|
}
|
|
|
|
task release(dependsOn: ['deploy', 'wrapper']) {
|
|
group = "Publishing"
|
|
description = "Releases new version."
|
|
}
|