Below are the local changes I have been using during Early Access, and which also work for the current GA release.
Note: only for JDK & docs; I haven't needed JRE packages. But I would assume that the JRE setup is basically a subset of SDK and could be easily adapted. The Early Access builds included x86 binaries; the current GA doesn't. However, I have kept the x86 matchers in case they get added later. --- oracle-jdk-doc.sh.orig 2016-09-11 02:39:56.000000000 +0200 +++ oracle-jdk-doc.sh 2017-10-03 09:22:38.507208079 +0200 @@ -2,8 +2,8 @@ oracle_j2sdk_doc_detect() { j2se_release=0 - # Update or GA release (jdk-7u25-apidocs.zip) - if [[ $archive_name =~ jdk-([0-9]+)(u([0-9]+))?-(apidocs|docs-all)\.zip ]] + # Update or GA release (jdk-7u25-apidocs.zip or jdk-9_doc-all.zip) + if [[ $archive_name =~ jdk-([0-9]+)(u([0-9]+))?([-_](apidocs|docs?-all)\.zip) ]] then j2se_release=${BASH_REMATCH[1]} j2se_update=${BASH_REMATCH[3]} @@ -33,6 +33,21 @@ fi fi + # JDK9 Early Access Release (jdk-9_doc-api-spec.tar.gz) + if [[ $archive_name =~ jdk-(9)(u([0-9]+))?_doc-api-spec.tar.gz ]] + then + j2se_release=${BASH_REMATCH[1]} + j2se_update=${BASH_REMATCH[3]} + if [[ $j2se_update != "" ]] + then + j2se_version_name="$j2se_release Update $j2se_update Early Access Release" + j2se_version=${j2se_release}u${j2se_update}~ea${revision} + else + j2se_version_name="$j2se_release Early Access Release" + j2se_version=${j2se_release}~ea${revision} + fi + fi + if [[ $j2se_release > 0 ]] then case "$j2se_release" in --- oracle-jdk.sh.orig 2016-09-11 02:39:56.000000000 +0200 +++ oracle-jdk.sh 2017-10-03 09:19:52.954958234 +0200 @@ -3,8 +3,8 @@ oracle_j2sdk_detect() { j2se_release=0 - # Update or GA release (jdk-7u15-linux-i586.tar.gz) - if [[ $archive_name =~ jdk-([0-9]+)(u([0-9]+))?-linux-(i586|x64|amd64|arm-vfp-hflt)\.(bin|tar\.gz) ]] + # Update or GA release (jdk-7u15-linux-i586.tar.gz, jdk-9_linux-x64_bin.tar.gz) + if [[ $archive_name =~ jdk-([0-9]+)(u([0-9]+))?[-_]linux-(i586|x86|x64|amd64|arm-vfp-hflt).*\.(bin|tar\.gz) ]] then j2se_release=${BASH_REMATCH[1]} j2se_update=${BASH_REMATCH[3]} @@ -19,13 +19,13 @@ fi fi - # Early Access Release (jdk-8-ea-bin-b103-linux-i586-15_aug_2013.tar.gz) - if [[ $archive_name =~ jdk-([0-9]+)(u([0-9]+))?-(ea|fcs)(-bin)?-(b[0-9]+)-linux-(i586|x64|amd64|arm-vfp-hflt).*\.(bin|tar\.gz) ]] + # Early Access Release (jdk-8-ea-bin-b103-linux-i586-15_aug_2013.tar.gz, jdk-9[-ea]+162_linux-x64_bin.tar.gz) + if [[ $archive_name =~ jdk-([0-9]+)(u([0-9]+))?(-(ea|fcs))?(-bin)?(-b|[+])([0-9]+)[-_]linux-(i586|x86|x64|amd64|arm-vfp-hflt).*\.(bin|tar\.gz) ]] then j2se_release=${BASH_REMATCH[1]} j2se_update=${BASH_REMATCH[3]} - j2se_build=${BASH_REMATCH[6]} - j2se_arch=${BASH_REMATCH[7]} + j2se_build=${BASH_REMATCH[8]} + j2se_arch=${BASH_REMATCH[9]} if [[ $j2se_update != "" ]] then j2se_version_name="$j2se_release Update $j2se_update Early Access Release Build $j2se_build" @@ -46,7 +46,7 @@ case "${DEB_BUILD_ARCH:-$DEB_BUILD_GNU_TYPE}" in i386|i486-linux-gnu) - if [[ "$j2se_arch" != "i586" ]]; then compatible=0; fi + if [[ "$j2se_arch" != "x86" && "$j2se_arch" != "i586" ]]; then compatible=0; fi ;; amd64|x86_64-linux-gnu) if [[ "$j2se_arch" != "x64" && "$j2se_arch" != "amd64" ]]; then compatible=0; fi @@ -105,7 +105,10 @@ oracle_no_man_jre_bin_jre="ControlPanel jcontrol" fi oracle_jre_lib_hl="jexec" - oracle_bin_jdk="appletviewer extcheck idlj jar jarsigner javac javadoc javah javap jcmd jconsole jdb jdeps jhat jinfo jmap jmc jps jrunscript jsadebugd jstack jstat jstatd jvisualvm native2ascii rmic schemagen serialver wsgen wsimport xjc" + # Java 8: Added: javapackager javafxpackager + # Java 9: Added: jaotc jdeprscan jhsdb jimage jjs jlink jmod jshell jweblauncher + # Removed: extcheck javafxpackager jhat jmc jsadebugd jvisualvm native2ascii + oracle_bin_jdk="appletviewer extcheck idlj jaotc jar jarsigner javac javadoc javafxpackager javah javap javapackager jcmd jconsole jdb jdeprscan jdeps jhat jhsdb jinfo jjs jlink jmap jmc jmod jps jrunscript jsadebugd jshell jstack jstat jstatd jvisualvm jweblauncher native2ascii rmic schemagen serialver wsgen wsimport xjc" j2se_package="$j2se_vendor-java$j2se_release-jdk" j2se_run fi