You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
2.2 KiB
70 lines
2.2 KiB
// Note that this is also declared in the main build.gradle for |
|
// subprojects, but since evaluationDependsOnChildren is enabled we |
|
// need to declare it here too to have bundle{bnd{...}} available |
|
apply plugin: 'biz.aQute.bnd.builder' |
|
|
|
description = """\ |
|
Smack core components.""" |
|
|
|
ext { |
|
xmlUnitVersion = '2.6.2' |
|
} |
|
|
|
dependencies { |
|
compile project(':smack-xmlparser') |
|
compile "org.jxmpp:jxmpp-core:$jxmppVersion" |
|
compile "org.jxmpp:jxmpp-jid:$jxmppVersion" |
|
compile "org.minidns:minidns-core:$miniDnsVersion" |
|
|
|
testFixturesImplementation project(':smack-xmlparser-stax') |
|
testFixturesImplementation project(':smack-xmlparser-xpp3') |
|
|
|
// Bouncy Castle is setup by SmackTestSuite. We deliberately use |
|
// 'implementation' here since there is no need to shadow it |
|
// outside of the fixtures compilation classpath. That is, no test |
|
// should ever setup Bouncy Castle as security provider explicitly. |
|
testFixturesImplementation "org.bouncycastle:bcprov-jdk15on:${bouncyCastleVersion}" |
|
testFixturesImplementation 'org.apache.commons:commons-lang3:3.10' |
|
|
|
testFixturesApi "org.jxmpp:jxmpp-jid:$jxmppVersion:tests" |
|
testFixturesApi "org.xmlunit:xmlunit-core:$xmlUnitVersion" |
|
// Explictily add assertj-core which is a dependency of |
|
// xmlunit-assertj, but gradle fails to resolves it with: |
|
// Execution failed for task ':smack-core:compileTestJava'. |
|
// > Could not resolve all files for configuration ':smack-core:testCompileClasspath'. |
|
// > Could not find org.assertj:assertj-core:. |
|
// Required by: |
|
// project :smack-core > org.xmlunit:xmlunit-assertj:2.6.2 |
|
testFixturesApi "org.assertj:assertj-core:3.11.1" |
|
testFixturesApi "org.xmlunit:xmlunit-assertj:$xmlUnitVersion" |
|
testFixturesApi 'org.hamcrest:hamcrest-library:2.2' |
|
testFixturesApi 'com.google.guava:guava:28.2-jre' |
|
} |
|
|
|
class CreateFileTask extends DefaultTask { |
|
@Input |
|
String fileContent |
|
|
|
@OutputFile |
|
File outputFile |
|
|
|
@TaskAction |
|
def createFile() { |
|
outputFile.text = fileContent |
|
} |
|
} |
|
|
|
task createVersionResource(type: CreateFileTask) { |
|
fileContent = version + ' (' + gitCommit + ' ' + builtDate + ')' |
|
outputFile = new File(projectDir, 'src/main/resources/org.jivesoftware.smack/version') |
|
} |
|
|
|
compileJava.dependsOn(createVersionResource) |
|
|
|
jar { |
|
bundle { |
|
bnd( |
|
'DynamicImport-Package': '*', |
|
) |
|
} |
|
}
|
|
|