tis-adoptium-openjdk17-jdk icon

Adoptium OpenJDK 17 JDK

Paquet d'installation silencieuse pour Adoptium OpenJDK 17 JDK

17.0.20.101-18
System and network
System and network

Les paquets PREPROD sont des paquets construits via LUTI. Ils restent généralement 5 jours en PREPROD, après quoi un deuxième scan VirusTotal est effectué pour vérifier que le status n'a pas changé.
Si le paquet réussit ce dernier contrôle, il est promu en PROD et publié sur le store.

  • package: tis-adoptium-openjdk17-jdk
  • name: Adoptium OpenJDK 17 JDK
  • version: 17.0.20.101-18
  • categories: System and network
  • maintainer: WAPT Team,Tranquil IT,Jimmy PELÉ,Clément BAZIRET
  • editor: AdoptOpenJDK
  • licence: opensource_free,cpe:/a:gnu:gpl_v2,wapt_public
  • locale: all
  • target_os: windows
  • impacted_process: java,javaw,java-rmi,jabswitch,jjs
  • architecture: x64
  • signature_date:
  • size: 332.94 Mo
  • installed_size: 201.56 Mo
  • homepage : https://adoptium.net/
  • conflicts :

package           : tis-adoptium-openjdk17-jdk
version           : 17.0.20.101-18
architecture      : x64
section           : base
priority          : optional
name              : Adoptium OpenJDK 17 JDK
categories        : System and network
maintainer        : WAPT Team,Tranquil IT,Jimmy PELÉ,Clément BAZIRET
description       : Eclipse Temurin (formerly Adoptium OpenJDK, formerly AdoptOpenJDK) with Hotspot is an open source Java SE build based upon OpenJDK
depends           : 
conflicts         : tis-adoptopenjdk17-jre
maturity          : PREPROD
locale            : all
target_os         : windows
min_wapt_version  : 2.3
sources           : https://adoptium.net/temurin/releases/?version=17
installed_size    : 201560138
impacted_process  : java,javaw,java-rmi,jabswitch,jjs
description_fr    : Eclipse Temurin (anciennement Adoptium OpenJDK, anciennement AdoptOpenJDK) avec Hotspot est une version open source de Java SE basée sur OpenJDK
description_pl    : Eclipse Temurin (dawniej Adoptium OpenJDK, dawniej AdoptOpenJDK) z Hotspotem to open source'owa kompilacja Java SE oparta na OpenJDK
description_de    : Eclipse Temurin (ehemals Adoptium OpenJDK, ehemals AdoptOpenJDK) mit Hotspot ist ein quelloffener Java SE Build, der auf OpenJDK basiert
description_es    : Eclipse Temurin (antes Adoptium OpenJDK, antes AdoptOpenJDK) con Hotspot es una compilación de Java SE de código abierto basada en OpenJDK
description_pt    : O Eclipse Temurin (anteriormente Adoptium OpenJDK, anteriormente AdoptOpenJDK) com Hotspot é uma compilação Java SE de código aberto baseada no OpenJDK
description_it    : Eclipse Temurin (ex Adoptium OpenJDK, ex AdoptOpenJDK) con Hotspot è una build open source di Java SE basata su OpenJDK
description_nl    : Eclipse Temurin (voorheen Adoptium OpenJDK, voorheen AdoptOpenJDK) met Hotspot is een open source Java SE build gebaseerd op OpenJDK
description_ru    : Eclipse Temurin (ранее Adoptium OpenJDK, ранее AdoptOpenJDK) с Hotspot - это сборка Java SE с открытым исходным кодом, основанная на OpenJDK
audit_schedule    : 
editor            : AdoptOpenJDK
keywords          : adopt,open,jdk,adoptopenjdk,java,jre
licence           : opensource_free,cpe:/a:gnu:gpl_v2,wapt_public
homepage          : https://adoptium.net/
package_uuid      : f6e2271b-1706-429c-9e59-2cd093b63def
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://adoptium.net/temurin/release-notes/
min_os_version    : 6.3
max_os_version    : 
icon_sha256sum    : 841c3b8e2f19942f438049a68b7920c2a49eb3997fb991dc6b41f3a8f242d3a3
signer            : test
signer_fingerprint: b82fc8ef4a4475c0f69ac168176c2bfc58f572eb716c4eadd65e4785c155dd8e
signature_date    : 2026-08-24T09:34:30.000000
signed_attributes : package,version,architecture,section,priority,name,categories,maintainer,description,depends,conflicts,maturity,locale,target_os,min_wapt_version,sources,installed_size,impacted_process,description_fr,description_pl,description_de,description_es,description_pt,description_it,description_nl,description_ru,audit_schedule,editor,keywords,licence,homepage,package_uuid,valid_from,valid_until,forced_install_on,changelog,min_os_version,max_os_version,icon_sha256sum,signer,signer_fingerprint,signature_date,signed_attributes
signature         : qZLLEcKDEu3onxqe7Go0N4c1nBr57v5poJqazV+CQW+dntyRTeLC+IcJThmroq3sXhavL/x0ZspjSZF16oZTlSqMIAtFDszybJw5FJoC7EHGQVBhsGVmWXfL0BgBsY6er10b8TPhErtMo9MbUTAJ3MbvR1zQfYwXHIPAmOUXr6BpqTOSnt/cQ33QXLdagsuKMRjGRncViSF7/dbVN49bcuckIY74/gI//5Tx0XZI59NIAmKhg3LENsNEU7DvO8KkbRp6WADQb10YND2YbiYoc6+ojfs9jn4t0b/3S46Fv16UJijc9t9iDJQUiBZgo3ERQBg+CtuhntIHBBNfwnFDKw==

# -*- coding: utf-8 -*-
from setuphelpers import *


# https://adoptium.net/installation/windows/
properties = "ADDLOCAL=FeatureMain,FeatureEnvironment,FeatureJarFileRunWith,FeatureJavaHome,FeatureOracleJavaSoft"
# properties = "INSTALLLEVEL=1"


def install():
    # Declaring local variables
    openjdk_version = control.get_software_version().split(".")[0]
    bin_contains = f"OpenJDK{openjdk_version}U"

    bin_name_x86 = glob.glob(f"{bin_contains}*x86-32*.msi")[0]
    install_msi_if_needed(
        bin_name_x86,
        properties=properties,
    )
    
    if "x64" in control.architecture:
        bin_name_x64 = glob.glob(f"{bin_contains}*x64*.msi")[0]
        install_msi_if_needed(
            bin_name_x64,
            properties=properties
        )

# -*- coding: utf-8 -*-
from setuphelpers import *
from setupdevhelpers import *
import waptlicences


def update_package():
    # Declaring local variables
    package_updated = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    app_name = control.name

    # https://api.adoptium.net/q/swagger-ui/#/Assets/searchReleases
    bin_type = control.package.rsplit("-", 1)[-1]
    openjdk_version = control.get_software_version().split(".")[0]

    update_dict = {
        "windows-x64": f"https://api.adoptium.net/v3/assets/feature_releases/{openjdk_version}/ga?architecture=x64&heap_size=normal&image_type={bin_type}&jvm_impl=hotspot&os=windows",
        "windows-x86": f"https://api.adoptium.net/v3/assets/feature_releases/{openjdk_version}/ga?architecture=x86&heap_size=normal&image_type={bin_type}&jvm_impl=hotspot&os=windows",
        "mac-x64": f"https://api.adoptium.net/v3/assets/feature_releases/{openjdk_version}/ga?architecture=x64&heap_size=normal&image_type={bin_type}&jvm_impl=hotspot&os=mac",
        "mac-arm": f"https://api.adoptium.net/v3/assets/feature_releases/{openjdk_version}/ga?architecture=aarch64&heap_size=normal&image_type={bin_type}&jvm_impl=hotspot&os=mac",
        "linux-x64": f"https://api.adoptium.net/v3/assets/feature_releases/{openjdk_version}/ga?architecture=x64&heap_size=normal&image_type={bin_type}&jvm_impl=hotspot&os=linux",
        "linux-arm64": f"https://api.adoptium.net/v3/assets/feature_releases/{openjdk_version}/ga?architecture=aarch64&heap_size=normal&image_type={bin_type}&jvm_impl=hotspot&os=linux",
    }
    os_type = control.target_os + "-" + ensure_list(control.architecture)[0]

    versions = []
    bin_names = []

    api_urls = [update_dict[os_type]]
    if os_type == "windows-x64":
        api_urls.append(update_dict["windows-x86"])

    for api_url in api_urls:

        # Getting latest version information from official API
        print("API used is: %s" % api_url)
        json_load = wgets(api_url, proxies=proxies, as_json=True)[0]
        version = json_load["version_data"]["semver"].replace("+", ".")
        download_url = json_load["binaries"][0]["installer"]["link"]
        latest_bin = json_load["binaries"][0]["installer"]["name"]
        architecture = json_load["binaries"][0]['architecture']

        versions.append(version)
        bin_names.append(latest_bin)

        # Downloading latest binaries
        print(f"Latest {app_name} {architecture} version is: {version}")
        print(f"Download URL is: {download_url}")
        if not isfile(latest_bin):
            print(f"Downloading: {latest_bin}")
            wget(download_url, latest_bin, proxies=proxies)
        else:
            print(f"Binary is present: {latest_bin}")
        
        expected_issuers_list = ["Eclipse.org Foundation, Inc.", "Eclipse Foundation"]
        sign_name = waptlicences.check_msi_signature(latest_bin)[0]
        if sign_name != expected_issuers_list[0] and sign_name != expected_issuers_list[1]:
            error(f'Bad issuer {sign_name} != {expected_issuers_list[0]} or {expected_issuers_list[1]}')

    version = versions[0]
    if Version(version) > Version(control.get_software_version()):
        print(f"Software version updated (from: {control.get_software_version()} to: {Version(version)})")
        package_updated = True
    else:
        print(f"Software version up-to-date ({Version(version)})")

    for f in glob.glob(f"*.{bin_names[0].rsplit('.', 1)[-1]}"):
        if f not in bin_names:
            remove_file(f)

    control.set_software_version(version)
    control.save_control_to_wapt()

    return package_updated

a6013774c5e4a34951e11c1997d8b4641d2de7736d3eac839231f4266bd1116f : OpenJDK17U-jdk_x64_windows_hotspot_17.0.20.1_1.msi
45a765d3f65f7bff4f98d0361296b301e04b3a44a06bc22203513f8b1ec328bb : OpenJDK17U-jdk_x86-32_windows_hotspot_17.0.17_10.msi
01ca7fe94636e5a08fcb73849d3b5df25d51e2c82f4dd1a08f01798b25899819 : WAPT/certificate.crt
b3b637292e9a7ad3398a034c4fe98bd23cc6bc97173884500808bf1ea5e8e6a2 : WAPT/control
841c3b8e2f19942f438049a68b7920c2a49eb3997fb991dc6b41f3a8f242d3a3 : WAPT/icon.png
aff325f9794f2bb3d94cccad13f649b5002db63d8c09d82658926240af91ee8a : luti.json
66c226e2368ed4b990848cb790730b23633a8082aa5a02ee6fa1923a6b70aae9 : setup.py
ee7438c0d2b6a8f55024d1c75100a78e3c3e69dd1c20ca2ef1ef5ff0587703b0 : update_package.py