36 lines
1.2 KiB
Groovy
36 lines
1.2 KiB
Groovy
|
import java.util.jar.Manifest
|
||
|
import org.gradle.api.tasks.bundling.GradleManifest
|
||
|
|
||
|
apply id: 'java'
|
||
|
|
||
|
configurations {
|
||
|
bundlor
|
||
|
}
|
||
|
|
||
|
dependencies {
|
||
|
bundlor 'com.springsource.bundlor:com.springsource.bundlor.ant:1.0.0.RELEASE',
|
||
|
'com.springsource.bundlor:com.springsource.bundlor:1.0.0.RELEASE',
|
||
|
'com.springsource.bundlor:com.springsource.bundlor.blint:1.0.0.RELEASE'
|
||
|
}
|
||
|
|
||
|
task bundlor(dependsOn: compileJava) {
|
||
|
onlyIf {
|
||
|
dependsOnTaskDidWork()
|
||
|
}
|
||
|
doFirst {
|
||
|
ant.taskdef(resource: 'com/springsource/bundlor/ant/antlib.xml', classpath: configurations.bundlor.asPath)
|
||
|
File template = new File(projectDir, 'template.mf')
|
||
|
mkdir(buildDir, 'bundlor')
|
||
|
if (template.exists()) {
|
||
|
ant.bundlor(inputPath: sourceSets.main.classesDir, outputPath: "$buildDir/bundlor", manifestTemplatePath: template) {
|
||
|
property(name: 'version', value: "$version")
|
||
|
property(name: 'spring.version', value: "$springVersion")
|
||
|
}
|
||
|
// See GRADLE-395 for support for using an existing manifest
|
||
|
jar.manifest = new GradleManifest(new Manifest(new File("$buildDir/bundlor/META-INF/MANIFEST.MF").newInputStream()))
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
jar.dependsOn bundlor
|