Skip to content

Parse Java distribution from .sdkmanrc #971

Description

@mlschechter

Description:
Given that the action now supports reading the Java version from the .sdkmanrc file, it would be advantageous to read a default distribution from that file as well. SDKMan uses distinct suffixes for each distribution to simplify mapping.

Justification:
Removes the need for users to duplicate the distribution information into their workflow.

Are you willing to submit a PR?
Maybe? Depends on the level of effort :)

Activity

  1. v-aparnajyothi-y commented on Jan 19, 2026

    @v-aparnajyothi-y
    Contributor

    Hello @mlschechter, Thank you for creating this issue and we will get back to you once we have some feedback on this :)

  2. lukaszgyg commented on Jan 24, 2026

    @lukaszgyg
    Contributor

    I've implemented this feature in PR #975.

    Why This Feature Matters

    When using .sdkmanrc, the distribution information is already present in the file format itself (e.g., java=21.0.5-tem where tem indicates Temurin). Currently, users must redundantly specify this in their workflow:

    Current requirement (redundant):

    - uses: actions/setup-java@main
      with:
        distribution: temurin  # Duplicates information from .sdkmanrc
        java-version-file: .sdkmanrc

    .sdkmanrc already contains:

    java=21.0.5-tem  # "tem" already indicates Temurin
    

    Value Proposition

    1. Eliminates Redundancy: The distribution parameter becomes unnecessary when .sdkmanrc already specifies it
    2. Single Source of Truth: Java configuration lives entirely in .sdkmanrc
    3. Consistency: Local development (SDKMAN) and CI/CD use identical configuration
    4. Simplified Workflows: One less parameter to maintain and keep in sync

    With this feature:

    - uses: actions/setup-java@main
      with:
        java-version-file: .sdkmanrc  # That's it!

    The implementation is backward compatible - if .sdkmanrc doesn't include a distribution suffix, the distribution parameter is still required.

  3. lukaszgyg commented on Mar 24, 2026

    @lukaszgyg
    Contributor

    Implemented in PR #975. The PR now parses supported SDKMAN distribution suffixes from .sdkmanrc, including the mapping fixes and test coverage discussed in review.

  4. michael-schechter-simspace commented on Jun 10, 2026

    @michael-schechter-simspace

    @lukaszgyg - Thanks for the implementation; is there any information on when this will be merged and released?

  5. lukaszgyg commented on Jun 10, 2026

    @lukaszgyg
    Contributor

    Unfortunately no :-(
    @aparnajyothi-y how we can trigger the review process for #975

  6. brunoborges commented on Jun 23, 2026

    @brunoborges
    Contributor

    Linking implementation: this is being addressed by PR #975 (distribution detection from .sdkmanrc). Tracking it there — this issue should auto-close when #975 merges.

  7. brunoborges commented on Jun 23, 2026

    @brunoborges
    Contributor

    Tracked under the epic #1048 (infer Java version/distribution from project files), which groups the related file-based detection requests for consistent design. This issue stays open as the specific sub-request.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    distributionJDK distribution/version/source supportfeature requestNew feature or request to improve the current logic

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions