with one click
jenv-gradle-low-ram
// Align jenv with .java-version and run Gradle reliably on low-RAM machines. Use for Java mismatch errors, Gradle OOMs, daemon memory pressure, and selecting safe build flags.
// Align jenv with .java-version and run Gradle reliably on low-RAM machines. Use for Java mismatch errors, Gradle OOMs, daemon memory pressure, and selecting safe build flags.
Deep reference for Markwon plugin internals, commonmark-java AST extension points, Android Spanned rendering, and AniList-Flavored Markdown syntax. Use when implementing new plugins, debugging rendering pipelines, choosing the correct hook layer (processMarkdown vs configureParser vs configureVisitor vs beforeSetText), or understanding how commonmark nodes become Android spans.
Implement or debug support-markdown plugins using real AniList feed fixtures, FeedList.graphql curl validation, and Markwon/commonmark-java extension points. Use for new plugin work, parser or rendering bugs, markdown test design, and deciding whether behavior belongs in processMarkdown, configureParser, configureVisitor, HtmlPlugin handlers, or beforeSetText.
Understand and change support-markdown build logic, Markwon/commonmark-java dependency wiring, module dependencies, version catalog entries, Dokka setup, and shared Gradle conventions. Use for buildSrc edits, new dependencies, parser or renderer dependency changes, or documentation pipeline work.
Write or improve KDoc for public APIs in support-markdown. Use for Dokka updates, plugin class docs, controller docs, listener docs, span docs, and explaining how downstream apps should use or configure Markwon and commonmark-java backed library behavior.
Reference map for support-markdown modules, plugin packages, dependency layers, Markwon/commonmark-java ownership boundaries, consumer entry points, and Dokka navigation. Use for questions like which package should own this code, where a class should live, or how the library is organized.
| name | jenv-gradle-low-ram |
| description | Align jenv with .java-version and run Gradle reliably on low-RAM machines. Use for Java mismatch errors, Gradle OOMs, daemon memory pressure, and selecting safe build flags. |
| argument-hint | Describe your target task and available RAM, for example: assembleDebug on 8GB RAM |
java and Gradle use the Java version pinned by .java-version../gradlew is about to be invoked in this repository..java-version is the active runtime for Gradle.cat .java-version
jenv is installed and initialized.command -v jenv
jenv versions
jenv version
Decision point:
jenv is not found, install and initialize it in your shell startup.jenv is found but jenv version does not match .java-version, continue to step 3.required_java="$(cat .java-version)"
jenv local "$required_java"
Decision point:
jenv local fails because the version is missing, install that JDK and run jenv add <jdk-path>, then retry.java -version
./gradlew -version
Quality check:
./gradlew -version must match .java-version major version (21).Preferred one-off profile for a debug build:
./gradlew :markdown:assembleDebug \
--no-daemon --max-workers=2 \
-Dorg.gradle.jvmargs="-Xmx1536m -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8"
For unit tests:
./gradlew :markdown:test \
--no-daemon --max-workers=2 \
-Dorg.gradle.jvmargs="-Xmx1792m -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8"
./gradlew :markdown:assembleDebug \
--no-daemon --max-workers=1 -Dorg.gradle.parallel=false
Suggested entries for ~/.gradle/gradle.properties:
org.gradle.daemon=false
org.gradle.parallel=false
org.gradle.workers.max=2
org.gradle.jvmargs=-Xmx1536m -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8
jenv version correct but java -version wrong:
Ensure shell init runs eval "$(jenv init -)" and enable export plugin with jenv enable-plugin export.Gradle daemon disappeared unexpectedly:
Retry with --no-daemon --max-workers=1 and lower -Xmx if the OS is reclaiming memory aggressively.:markdown:assembleDebug) instead of full-project builds.app module not found during build:
The :app module is excluded in CI (settings.gradle checks the CI env var). Run without CI=true locally or target :markdown explicitly..java-version and jenv version resolve to the same Java release../gradlew -version reports the expected JVM..java-version and run a debug build with 8GB RAM settings"