microsoft / microsoft/winget-pkgs

[Package Issue]: Oracle.JDK.20 marked as installed when Oracle.JDK.17 is

Open
#112,960 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Area-Matching Issue-Bug
Dominant language
No language data
Stars
11.1k
Forks
9.7k
Avg merge
1h 32m
Merged PRs (30d)
376

Description

Please confirm these before moving forward
  • I have searched for my issue and not found a work-in-progress/duplicate/resolved issue.
  • I have not been informed if the issue is resolved in a preview version of the winget client.
Category of the issue

Other

Brief description of your issue

Winget thinks Oracle.JDK.20 is installed (and suggests to update) when the installed version of Oracle.JDK.17 is newer than what is provided by winget.

Unsure if this is a packaging issue, or a problem with winget itself.

Steps to reproduce

Install a version of Oracle.JDK.17 that is newer than the latest provided by winget - for example currently latest version is 17.0.8.0 but in winget is 17.0.7.0.

Then run winget winget upgrade --all. Winget will suggest switching the package from JDK 17 to 20 (as shown in screenshot).

Actual behavior

Winget switches package ID from Oracle.JDK.17 to Oracle.JDK.20.

It in fact detects that Oracle.JDK.20 is installed.

Expected behavior

Winget should show no available updates.

It should detect that Oracle.JDK.17 is installed, not Oracle.JDK.20.

Environment
Windows Package Manager v1.5.1881
Copyright (c) Microsoft Corporation. All rights reserved.

Windows: Windows.Desktop v10.0.22621.1992
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.20.1881.0

Winget Directories
-----------------------------------------------------------------------------------------------------------------------
Logs                               %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\Diag…
User Settings                      %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\sett…
Portable Links Directory (User)    %LOCALAPPDATA%\Microsoft\WinGet\Links
Portable Links Directory (Machine) C:\Program Files\WinGet\Links
Portable Package Root (User)       %LOCALAPPDATA%\Microsoft\WinGet\Packages
Portable Package Root              C:\Program Files\WinGet\Packages
Portable Package Root (x86)        C:\Program Files (x86)\WinGet\Packages

Links
---------------------------------------------------------------------------
Privacy Statement   https://aka.ms/winget-privacy
License Agreement   https://aka.ms/winget-license
Third Party Notices https://aka.ms/winget-3rdPartyNotice
Homepage            https://aka.ms/winget
Windows Store Terms https://www.microsoft.com/en-us/storedocs/terms-of-sale

Admin Setting                             State
--------------------------------------------------
LocalManifestFiles                        Enabled
BypassCertificatePinningForMicrosoftStore Disabled
InstallerHashOverride                     Disabled
LocalArchiveMalwareScanOverride           Disabled
Screenshots and Logs

image

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the report with an Oracle JDK 17 installation newer than the repository's 17.0.7.0 version, then run winget upgrade --all using the stated Windows Package Manager environment. Compare how Oracle.JDK.17 and Oracle.JDK.20 are detected; done means the installed JDK 17 is recognized and no update or package switch is suggested.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
cli, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.