Loading...
Loading...
Master Gradle - Kotlin DSL, task configuration, build optimization, caching
npx skill4agent add pluginagentmarketplace/custom-plugin-java java-gradle// build.gradle.kts
plugins {
java
id("org.springframework.boot") version "3.2.1"
id("io.spring.dependency-management") version "1.1.4"
}
java {
toolchain {
languageVersion = JavaLanguageVersion.of(21)
}
}
repositories {
mavenCentral()
}
dependencies {
implementation("org.springframework.boot:spring-boot-starter-web")
testImplementation("org.springframework.boot:spring-boot-starter-test")
}
tasks.withType<JavaCompile> {
options.compilerArgs.addAll(listOf("-parameters", "-Xlint:all"))
options.isFork = true
options.isIncremental = true
}
tasks.test {
useJUnitPlatform()
maxParallelForks = Runtime.getRuntime().availableProcessors() / 2
}# gradle/libs.versions.toml
[versions]
spring-boot = "3.2.1"
[libraries]
spring-boot-web = { module = "org.springframework.boot:spring-boot-starter-web", version.ref = "spring-boot" }
[plugins]
spring-boot = { id = "org.springframework.boot", version.ref = "spring-boot" }gradle dependencies # View dependencies
gradle dependencyInsight --dependency log4j # Analyze dep
gradle build --scan # Build scan
gradle build --build-cache # Use cache
gradle wrapper --gradle-version 8.5 # Update wrapper// settings.gradle.kts
enableFeaturePreview("STABLE_CONFIGURATION_CACHE")
// Enable parallel and caching
org.gradle.parallel=true
org.gradle.caching=true| Problem | Solution |
|---|---|
| Slow builds | Enable --build-cache |
| Version conflict | Use platform() or constraints |
| Cache issues | gradle --refresh-dependencies |
Skill("java-gradle")