In Gradle monorepos, JDTLS resolves its root to the nearest build.gradle (subproject level) instead of the workspace root (settings.gradle). This causes a separate JDTLS process (~1-3GB each) per subproject.
Additionally, JDTLS creates temp data directories via fs.mkdtemp that are never cleaned up on shutdown, leaking across sessions.
In Gradle monorepos, JDTLS resolves its root to the nearest
build.gradle(subproject level) instead of the workspace root (settings.gradle). This causes a separate JDTLS process (~1-3GB each) per subproject.Additionally, JDTLS creates temp data directories via
fs.mkdtempthat are never cleaned up on shutdown, leaking across sessions.