Package Details: jdk-lts 17.0.11-1

Git Clone URL: https://aur.archlinux.org/jdk-lts.git (read-only, click to copy)
Package Base: jdk-lts
Description: Oracle Java Development Kit (LTS release)
Upstream URL: https://www.oracle.com/java/
Licenses: custom
Provides: java-environment, java-environment-jdk, jdk17-jdk
Submitter: dbermond
Maintainer: dbermond
Last Packager: dbermond
Votes: 7
Popularity: 0.000026
First Submitted: 2022-03-24 13:44 (UTC)
Last Updated: 2024-04-26 00:51 (UTC)

Required by (916)

Sources (9)

Latest Comments

dbermond commented on 2024-04-28 17:17 (UTC)

@smw please do not post huge pastes here, but use a pastebin service and provide the link. That being said, I have just re-downloaded a fresh copy or the sources, and the checksums are correct.

smw commented on 2024-04-27 22:10 (UTC)

I was able to install 17.0.11, but to do so I had to edit the PKGBUILD to correct the version number and to supply the correct sha256sums. Here's the file that worked for me.

# Maintainer : Daniel Bermond <dbermond@archlinux.org>

pkgbase=jdk-lts
pkgname=('jre-lts' 'jdk-lts' 'jdk-lts-doc')
pkgver=17.0.11
_build=1
_hash=a473b47039a34b169d45b00685dea3dd
_majver="${pkgver%%.*}"
pkgrel=1
pkgdesc='Oracle Java'
arch=('x86_64')
url='https://www.oracle.com/java/'
license=('custom')
makedepends=('python-html2text')
source=("https://download.oracle.com/java/17/archive/jdk-17.0.11_linux-x64_bin.tar.gz"
        "https://download.oracle.com/otn_software/java/jdk/17.0.11+7/b5d5a1a1d28fa8b589294cbae5269808/jdk-17.0.11_doc-all.zip"
        "jdk-${_majver}_doc-license.html"::"https://download.oracle.com/otndocs/jcp/java_se-${_majver}-final-spec/license.html"
        'java.desktop'
        'jconsole.desktop'
        'jshell.desktop'
        'java_16.png'
        'java_48.png'
        'LICENSE')
noextract=("jdk-${pkgver}_doc-all.zip")
sha256sums=('62f12f52306217ec80bdc6ad0bdc627824b584d4d96c56976215f0167d92a322'
            '6bf262bf0c4229dd8f3ceea2285fbaf11f8993febc0f5e254445d10ddc185fa0'
            'ab50940bda40a9e8935d1a8f002debda0fdd0b3e2bcc0319827ec19acd8b34f3'
            'ee891aca4c92f6485218b17273cf00ec0ac4df4915daa461271006081450aeae'
            '0f321c01558c0deddd20d82a694a1e2f38b3c78dc257d4122a174b16582fc7b4'
            '3b7a0f46e2fd7d715e2af270b7702c511f96937b3e9c0bf46c4d575b704d40e6'
            'd27fec1d74f7a3081c3d175ed184d15383666dc7f02cc0f7126f11549879c6ed'
            '7cf8ca096e6d6e425b3434446b0835537d0fc7fe64b3ccba7a55f7bd86c7e176'
            '20becfcac0bdeaa29a76e6966d727f8cc79381354cbd5d530cdec823954df19f')

DLAGENTS=('https::/usr/bin/curl -fLC - --retry 3 --retry-delay 3 -b oraclelicense=a -o %o %u')

prepare() {
    mkdir -p "jdk-doc-${pkgver}"
    bsdtar -x -f "jdk-${pkgver}_doc-all.zip" -C "jdk-doc-${pkgver}" --strip-components='1'
    html2text "jdk-${_majver}_doc-license.html" > LICENSE-doc
}

package_jre-lts() {
    pkgdesc+=' Runtime Environment (LTS release)'
    depends=('java-runtime-common' 'ca-certificates-utils' 'freetype2' 'libx11' 'libxext'
             'libxi' 'libxtst' 'libxrender')
    optdepends=('alsa-lib: for basic sound support'
                'gtk2: for the Gtk+ 2 look and feel - desktop usage'
                'gtk3: for the Gtk+ 3 look and feel - desktop usage')
    provides=("java-runtime=${_majver}" "java-runtime-jdk${_majver}"
              "jre${_majver}-jdk=${pkgver}-${pkgrel}"
              "java-runtime-headless=${_majver}" "java-runtime-headless-jdk=${_majver}"
              "jre${_majver}-jdk-headless="${pkgver}-${pkgrel})
    backup=("etc/java-${pkgbase}/management/jmxremote.access"
            "etc/java-${pkgbase}/management/jmxremote.password.template"
            "etc/java-${pkgbase}/management/management.properties"
            "etc/java-${pkgbase}/security/policy/limited/default_US_export.policy"
            "etc/java-${pkgbase}/security/policy/limited/default_local.policy"
            "etc/java-${pkgbase}/security/policy/limited/exempt_local.policy"
            "etc/java-${pkgbase}/security/policy/unlimited/default_US_export.policy"
            "etc/java-${pkgbase}/security/policy/unlimited/default_local.policy"
            "etc/java-${pkgbase}/security/policy/README.txt"
            "etc/java-${pkgbase}/security/java.policy"
            "etc/java-${pkgbase}/security/java.security"
            "etc/java-${pkgbase}/logging.properties"
            "etc/java-${pkgbase}/net.properties"
            "etc/java-${pkgbase}/sound.properties")
    install=jre.install

    cd "jdk-${pkgver}"
    local _jvmdir="/usr/lib/jvm/java-${_majver}-jdk"

    install -d -m755 "${pkgdir}/etc"
    install -d -m755 "${pkgdir}/${_jvmdir}"
    install -d -m755 "${pkgdir}/usr/share/licenses/${pkgname}"

    # conf
    cp -a conf "${pkgdir}/etc/java-${pkgbase}"
    ln -s "../../../../etc/java-${pkgbase}" "${pkgdir}/${_jvmdir}/conf"

    # bin
    install -D -m755 bin/{java,jfr,jrunscript} -t "${pkgdir}/${_jvmdir}/bin"
    install -D -m755 bin/{keytool,rmiregistry} -t "${pkgdir}/${_jvmdir}/bin"

    # libs
    cp -a lib "${pkgdir}/${_jvmdir}"
    rm "${pkgdir}/${_jvmdir}/lib/"{ct.sym,libattach.so,libsaproc.so,src.zip}

    # man pages
    local _file
    for _file in man/man1/{java,jfr,jrunscript,keytool,rmiregistry}.1
    do
        install -D -m644 "$_file" "${pkgdir}/usr/share/${_file%.1}-jdk${_majver}.1"
    done

    install -D -m644 release -t "${pkgdir}/${_jvmdir}"

    # link JKS keystore from ca-certificates-utils
    rm "${pkgdir}${_jvmdir}/lib/security/cacerts"
    ln -s /etc/ssl/certs/java/cacerts "${pkgdir}${_jvmdir}/lib/security/cacerts"

    # legal/licenses
    cp -a legal/* "${pkgdir}/usr/share/licenses/${pkgname}"
    ln -s "$pkgname" "${pkgdir}/usr/share/licenses/java-${pkgname}"
    ln -s "../../../share/licenses/${pkgname}" "${pkgdir}/${_jvmdir}/legal"
    install -D -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}"
}

package_jdk-lts() {
    pkgdesc+=' Development Kit (LTS release)'
    depends=('java-environment-common' "jre-lts=${pkgver}-${pkgrel}" 'zlib'
             'hicolor-icon-theme')
    provides=("java-environment=${_majver}" "java-environment-jdk=${_majver}"
              "jdk${_majver}-jdk=${pkgver}-${pkgrel}")
    install=jdk.install

    cd "jdk-${pkgver}"
    local _jvmdir="/usr/lib/jvm/java-${_majver}-jdk"

    install -d -m755 "${pkgdir}/${_jvmdir}"
    install -d -m755 "${pkgdir}/usr/share/licenses/${pkgname}"

    # bin
    cp -a bin "${pkgdir}/${_jvmdir}"
    rm "${pkgdir}/${_jvmdir}/bin/"{java,jfr,jrunscript,keytool,rmiregistry}

    # libs
    install -D -m644 lib/ct.sym       -t "${pkgdir}/${_jvmdir}/lib"
    install -D -m644 lib/libattach.so -t "${pkgdir}/${_jvmdir}/lib"
    install -D -m644 lib/libsaproc.so -t "${pkgdir}/${_jvmdir}/lib"

    cp -a include "${pkgdir}/${_jvmdir}"
    cp -a jmods   "${pkgdir}/${_jvmdir}"

    install -D -m644 lib/src.zip -t "${pkgdir}/${_jvmdir}/lib"

    # desktop and icons
    install -D -m644 "${srcdir}/java.desktop"     "${pkgdir}/usr/share/applications/java-java${_majver}-jdk.desktop"
    install -D -m644 "${srcdir}/jconsole.desktop" "${pkgdir}/usr/share/applications/jconsole-java${_majver}-jdk.desktop"
    install -D -m644 "${srcdir}/jshell.desktop"   "${pkgdir}/usr/share/applications/jshell-java${_majver}-jdk.desktop"
    install -D -m644 "${srcdir}/java_16.png" "${pkgdir}/usr/share/icons/hicolor/16x16/apps/java${_majver}-jdk.png"
    install -D -m644 "${srcdir}/java_48.png" "${pkgdir}/usr/share/icons/hicolor/48x48/apps/java${_majver}-jdk.png"

    # man pages
    local _file
    while read -r -d '' _file
    do
        install -D -m644 "$_file" "${pkgdir}/usr/share/${_file%.1}-jdk${_majver}.1"
    done < <(find man/man1 -type f -print0)
    rm "${pkgdir}/usr/share/man/man1/"{java,jfr,jrunscript,keytool,rmiregistry}-jdk"${_majver}".1

    # legal/licenses
    cp -a legal/* "${pkgdir}/usr/share/licenses/${pkgname}"
    ln -s "$pkgname" "${pkgdir}/usr/share/licenses/java${_majver}-${pkgname}"
    install -D -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}"
}

package_jdk-lts-doc() {
    pkgdesc+=' documentation (LTS release)'
    arch=('any')

    install -d -m755 "${pkgdir}/usr/share"/{doc,licenses}
    cp -dr --no-preserve='ownership' "jdk-doc-${pkgver}" "${pkgdir}/usr/share/doc/java${_majver}-jdk"
    mv "${pkgdir}/usr/share/doc/java${_majver}-jdk/legal" "${pkgdir}/usr/share/licenses/${pkgname}"
    install -D -m644 LICENSE-doc "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
    ln -s "../../licenses/${pkgname}" "${pkgdir}/usr/share/doc/java${_majver}-jdk/legal"
}

P0rc0R0550 commented on 2023-06-27 07:25 (UTC)

@dbermond: Thanks! I try to find a solution.

dbermond commented on 2023-06-26 16:12 (UTC)

@P0rc0R0550 Sorry, but Manjaro is not supported. Please seek help in your distribution support channels.

P0rc0R0550 commented on 2023-06-25 18:39 (UTC) (edited on 2023-06-25 18:54 (UTC) by P0rc0R0550)

  1. sudo pacman -Syyu
:: Sincronizzazione dei database in corso...
 core                                                                                143,6 KiB   684 KiB/s 00:00 [####################################################################] 100%
 extra                                                                              1637,9 KiB  3,84 MiB/s 00:00 [####################################################################] 100%
 community                                                                             7,0 MiB  4,83 MiB/s 00:01 [####################################################################] 100%
 multilib                                                                            145,5 KiB  3,02 MiB/s 00:00 [####################################################################] 100%
:: Aggiornamento del sistema in corso...
 Nessun aggiornamento disponibile
  1. pamac checkupdates -a
3 aggiornamenti disponibili:
jdk-lts         17.0.6-1 -> 17.0.7-1  AUR
jre             20-1     -> 20.0.1-1  AUR
jre-lts         17.0.6-1 -> 17.0.7-1  AUR
  1. pamac update -a
Preparazione...
Synchronizing package databases...
Controllo delle dipendenze di jre-lts in corso...
Controllo delle dipendenze di jdk-lts in corso...
Controllo delle dipendenze di jre in corso...
Risoluzione delle dipendenze...
Controllo conflitti tra i pacchetti...
Errore: Predisposizione del trasferimento non riuscita:
impossibile soddisfare le dipendenze:
- unable to satisfy dependency 'jre-lts=17.0.6-1' required by jdk-lts



Modifica file di costruzione : [e] 
Applica la transazione ? [e/s/N] s

Trasferimento annullato.
  1. pamac update -a
Preparazione...
Synchronizing package databases...
Clonazione jdk-lts file di costruzione in corso...
Creazione informazioni jre-lts...
==> ERRORE: PKGBUILD non esiste.
Errore: Predisposizione del trasferimento non riuscita: Impossibile generare informazioni per jre-lts
  1. archlinux-java status
Available Java environments:
  java-11-jdk
  java-11-openjdk
  java-17-jdk (default)
  java-17-openjdk
  java-20-jdk
  java-20-openjdk
  java-8-jdk
  java-8-jre/jre
  java-8-openjdk/jre
  1. java -version
java version "17.0.6" 2023-01-17 LTS
Java(TM) SE Runtime Environment (build 17.0.6+9-LTS-190)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.6+9-LTS-190, mixed mode, sharing)

dbermond commented on 2022-04-05 15:31 (UTC)

@msld Fixed. Thanks for reporting.

msld commented on 2022-04-05 06:08 (UTC)

Hello, this package and jre-lts should use the same java home, however jdk-lts uses /usr/lib/jvm/java-17-jdk-lts/, whole jre-lts uses /usr/lib/jvm/java-17-jdk