apply plugin: 'java' apply plugin: 'idea' version = '0.5' ext.packageName = 'net.thauvin.erik.mobibot' ext.mainClassName = packageName + '.Mobibot' ext.deployDir = 'deploy' repositories { mavenCentral() } dependencies { compile 'log4j:log4j:1.2.17@jar' compile 'pircbot:pircbot:1.5.0' compile 'commons-codec:commons-codec:1.9' compile 'commons-logging:commons-logging:1.1.3' 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.7.3' compile 'rome:rome:1.0@jar' compile 'rome:rome-fetcher:1.0@jar' compile 'org.json:json:20140107' compile 'org.ostermiller:utils:1.07.00' compile 'net.sourceforge.jweather:jweather:0.3.0@jar' compile 'de.congrace:exp4j:0.3.11' compile 'org.twitter4j:twitter4j-core:4.0.1' compile 'net.sf.delicious-java:delicious:1.14' //compile fileTree(dir: 'lib', include: '*.jar') //compile files('../path/to/example.jar') } task wrapper(type: Wrapper) { gradleVersion = gradle.gradleVersion } compileJava { dependsOn wrapper doFirst { 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')) } } jar { doFirst { manifest { attributes("Manifest-Version": "1.0", "Main-Class": mainClassName, "Class-Path": '. ./lib/' + configurations.compile.collect { it.getName() }.join(' ./lib/')) } } version = null } task deploy(dependsOn: build) { description = "Copies all needed files to the ${deployDir} directory." copy { into deployDir + '/lib' from configurations.runtime } copy { from 'properties' into deployDir include('*.properties') } copy { from jar into deployDir } file(deployDir + '/logs').mkdirs(); }