TestVectors/runtimes/java/build.gradle.kts (62 lines of code) (raw):

import java.io.File import java.io.FileInputStream import java.util.Properties tasks.wrapper { gradleVersion = "7.6" } plugins { `java-library` `maven-publish` `application` } var props = Properties().apply { load(FileInputStream(File(rootProject.rootDir, "../../../project.properties"))) } var mplVersion = props.getProperty("mplDependencyJavaVersion") group = "software.amazon.cryptography" version = "1.0.0-SNAPSHOT" description = "AwsEncryptionSDKJavaTestVectors" java { toolchain.languageVersion.set(JavaLanguageVersion.of(8)) sourceSets["main"].java { srcDir("src/main/java") srcDir("src/main/dafny-generated") srcDir("src/main/smithy-generated") } sourceSets["test"].java { srcDir("src/test/dafny-generated") srcDir("src/test/java") } } repositories { // Use Maven Central for resolving dependencies. mavenCentral() mavenLocal() } dependencies { implementation("org.dafny:DafnyRuntime:4.8.0") implementation("software.amazon.smithy.dafny:conversion:0.1") implementation("software.amazon.cryptography:aws-cryptographic-material-providers:${mplVersion}") implementation("software.amazon.cryptography:TestAwsCryptographicMaterialProviders:${mplVersion}") implementation("software.amazon.cryptography:aws-encryption-sdk:1.0.0-SNAPSHOT") implementation("com.amazonaws:aws-encryption-sdk-java:3.0.1") implementation(platform("software.amazon.awssdk:bom:2.25.1")) implementation("software.amazon.awssdk:dynamodb") implementation("software.amazon.awssdk:dynamodb-enhanced") implementation("software.amazon.awssdk:kms") } tasks.register<JavaExec>("runTests") { dependsOn("copyKeysJSON") mainClass.set("TestsFromDafny") classpath = sourceSets["test"].runtimeClasspath } tasks.register<Copy>("copyKeysJSON") { from(layout.projectDirectory.file("../../dafny/TestVectors/test/keys.json")) into(layout.projectDirectory.dir("dafny/TestVectors/test")) } tasks.register<Copy>("copyKeysJSONCurr") { from(layout.projectDirectory.file("../../dafny/TestVectors/test/keys.json")) into(layout.projectDirectory.dir(".")) } application { mainClass.set("ImplementationFromDafny") }