Skip to content

Instantly share code, notes, and snippets.

@bodiam
Created April 10, 2023 05:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save bodiam/90ce15684f5a9b42e095151849329da0 to your computer and use it in GitHub Desktop.
Save bodiam/90ce15684f5a9b42e095151849329da0 to your computer and use it in GitHub Desktop.
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
id("org.springframework.boot") version "3.0.5"
id("io.spring.dependency-management") version "1.1.0"
// id("org.graalvm.buildtools.native") version "0.9.20"
kotlin("jvm") version "1.8.20"
kotlin("plugin.spring") version "1.8.20"
kotlin("plugin.jpa") version "1.8.20"
}
group = "com.allday"
version = "0.0.1-SNAPSHOT"
java.sourceCompatibility = JavaVersion.VERSION_17
repositories {
mavenCentral()
}
extra["testcontainersVersion"] = "1.18.0"
dependencies {
implementation("org.springframework.boot:spring-boot-starter-actuator")
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
implementation("org.springframework.boot:spring-boot-starter-web")
implementation("org.springframework.boot:spring-boot-starter-validation")
implementation("org.springframework.boot:spring-boot-starter-security")
implementation("org.springframework.boot:spring-boot-starter-mail")
implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
implementation("org.jetbrains.kotlin:kotlin-reflect")
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
implementation("org.tinylog:tinylog-api-kotlin:2.6.1")
implementation("org.tinylog:tinylog-impl:2.6.1")
implementation("org.mnode.ical4j:ical4j:4.0.0-beta7")
implementation("org.springdoc:springdoc-openapi-starter-webmvc-ui:2.1.0")
implementation("org.springdoc:springdoc-openapi-starter-common:2.1.0")
// Google related
implementation("com.google.maps:google-maps-services:2.2.0")
// Scheduler | Shedlock
implementation("net.javacrumbs.shedlock:shedlock-spring:5.2.0")
implementation("net.javacrumbs.shedlock:shedlock-provider-jdbc-template:5.2.0")
developmentOnly("org.springframework.boot:spring-boot-devtools")
implementation("org.postgresql:postgresql")
implementation("org.flywaydb:flyway-core")
testImplementation("org.springframework.boot:spring-boot-starter-test")
implementation("org.testcontainers:junit-jupiter")
implementation("org.testcontainers:testcontainers")
implementation("org.testcontainers:postgresql")
testImplementation(platform("io.cucumber:cucumber-bom:7.11.2"))
testImplementation("io.cucumber:cucumber-java")
testImplementation("io.cucumber:cucumber-junit-platform-engine")
testImplementation("io.cucumber:cucumber-spring")
testImplementation("org.junit.platform:junit-platform-suite")
testImplementation("com.icegreen:greenmail-junit5:2.0.0")
testImplementation("org.awaitility:awaitility:4.2.0")
testImplementation("org.assertj:assertj-core:3.24.2")
testImplementation("org.mockito:mockito-core:5.2.0")
implementation("net.datafaker:datafaker:1.8.1")
}
dependencyManagement {
imports {
mavenBom("org.testcontainers:testcontainers-bom:${property("testcontainersVersion")}")
}
}
tasks.withType<KotlinCompile> {
kotlinOptions {
freeCompilerArgs = listOf("-Xjsr305=strict")
jvmTarget = "17"
}
}
tasks.withType<Test> {
useJUnitPlatform()
}
// This is here because Greenmail / Spring Boot 3.0 don't like having this dependency in the classpath.
//configurations.all {
// resolutionStrategy {
// exclude("com.sun.activation", "jakarta.activation")
// }
//}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment