40 lines
2.0 KiB
Markdown
40 lines
2.0 KiB
Markdown
# Java Gradle Build File Parsing (Groovy/Kotlin/TOML)
|
|
|
|
## Module
|
|
Scanner
|
|
|
|
## Status
|
|
VERIFIED
|
|
|
|
## Description
|
|
Parses Gradle build files in three DSL formats (Groovy build.gradle, Kotlin build.gradle.kts, TOML version catalogs libs.versions.toml) to extract declared dependencies, plugins, and version constraints.
|
|
|
|
## Implementation Details
|
|
- **Gradle Parsers**:
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Analyzers.Lang.Java/Internal/Gradle/GradleGroovyParser.cs` - Groovy `build.gradle` parser
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Analyzers.Lang.Java/Internal/Gradle/GradleKotlinParser.cs` - Kotlin `build.gradle.kts` parser
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Analyzers.Lang.Java/Internal/Gradle/GradleVersionCatalogParser.cs` - TOML `libs.versions.toml` version catalog parser
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Analyzers.Lang.Java/Internal/Gradle/GradlePropertiesParser.cs` - `gradle.properties` parser for version variables
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Analyzers.Lang.Java/Internal/Gradle/TomlParser.cs` - Generic TOML parser
|
|
- **Build File Discovery**:
|
|
- `src/Scanner/__Libraries/StellaOps.Scanner.Analyzers.Lang.Java/Internal/Discovery/JavaBuildFileDiscovery.cs` - Discovers build files in project structure
|
|
|
|
## E2E Test Plan
|
|
- [ ] Scan a container with a Groovy `build.gradle` project and verify dependencies are extracted with group, artifact, and version
|
|
- [ ] Scan a Kotlin `build.gradle.kts` project and verify dependencies are correctly parsed
|
|
- [ ] Scan a project using TOML version catalog (`libs.versions.toml`) and verify version references are resolved
|
|
- [ ] Verify plugin declarations are extracted from build files
|
|
- [ ] Verify version constraints (e.g., `strictly`, `prefer`, ranges) are captured
|
|
- [ ] Verify `gradle.properties` variables are interpolated in dependency versions
|
|
|
|
---
|
|
|
|
## Verification
|
|
|
|
| Check | Result |
|
|
|-------|--------|
|
|
| Tier 0 - Source files exist | PASS |
|
|
| Tier 1 - Build + code review | PASS |
|
|
| Tier 2 - Integration tests | PASS |
|
|
| Verified | 2026-02-13T18:10:00Z |
|