plugins { id 'java' id 'maven-publish' alias(libs.plugins.spring.boot) alias(libs.plugins.spring.dependencies) alias(libs.plugins.vaadin) } java { toolchain { languageVersion = JavaLanguageVersion.of(25) } } repositories { maven { setUrl("https://nexus.thpeetz.de/repository/maven-central") } mavenCentral() } ext { set('vaadinVersion', "25.2.6") } dependencies { implementation 'org.springframework.boot:spring-boot-starter-actuator' implementation 'org.springframework.boot:spring-boot-starter-artemis' implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-security' developmentOnly 'com.vaadin:vaadin-dev' implementation 'com.vaadin:vaadin-spring-boot-starter' implementation 'org.apache.camel.springboot:camel-spring-boot-starter:4.22.0' implementation 'org.apache.camel.springboot:camel-jms-starter' implementation 'org.apache.activemq:artemis-jakarta-client' implementation libs.hypersistence implementation libs.mail compileOnly 'org.projectlombok:lombok' developmentOnly 'org.springframework.boot:spring-boot-devtools' runtimeOnly 'io.micrometer:micrometer-registry-prometheus' implementation 'org.springframework.security:spring-security-oauth2-jose' implementation 'org.springframework.security:spring-security-oauth2-resource-server' runtimeOnly 'org.postgresql:postgresql' runtimeOnly 'org.xerial:sqlite-jdbc' //implementation 'org.hibernate.orm:hibernate-community-dialects' annotationProcessor 'org.projectlombok:lombok' annotationProcessor 'org.springframework.boot:spring-boot-configuration-processor' testImplementation 'org.springframework.boot:spring-boot-starter-artemis-test' testImplementation 'org.springframework.boot:spring-boot-starter-data-jpa-test' testImplementation 'org.springframework.boot:spring-boot-starter-security-test' testCompileOnly 'org.projectlombok:lombok' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' testAnnotationProcessor 'org.projectlombok:lombok' } dependencyManagement { imports { mavenBom libs.vaadin.bom.get().toString() mavenBom libs.camel.bom.get().toString() } } publishing { publications { bootJava(MavenPublication) { artifact tasks.named("bootJar") } } repositories { maven { url = version.endsWith('SNAPSHOT') ? 'https://nexus.thpeetz.de/repository/maven-snapshots' : 'https://nexus.thpeetz.de/repository/maven-releases' credentials { username = project.findProperty('nexusUser') password = project.findProperty('nexusPassword') } } } } bootRun { args = ["--spring.profiles.active=${project.properties['profile'] ?: 'prod'}"] } tasks.named('test') { useJUnitPlatform() } wrapper { gradleVersion = libs.versions.gradle.get().toString() }