Problema
- „ESET PROTECT On-Prem“ žiniatinklio konsolėje palaikomos JDK ir „Apache Tomcat“ versijos
- „Apache Tomcat“ naudojamos JDK versijos keitimas „ESET PROTECT On-Prem“ žiniatinklio konsolėje
- Įdiekite „Amazon Corretto“ JDK
- „Nepavyko įkelti duomenų“ klaidos ištaisymas naudojant JDK 17 ar naujesnę versiją
Išsami informacija
Spustelėkite, kad išplėstumėte
„ESET PROTECT On-Prem“ žiniatinklio konsolė veikia „Apache Tomcat“ aplinkoje – tai žiniatinklio serveris ir servletų konteineris, skirtas „Java“ programoms. „Apache Tomcat“ neapima „Java“ vykdymo aplinkos; ji remiasi „Java“ vykdymo aplinka, kurią teikia „Java Development Kit“ (JDK). Anksčiau „Oracle JDK 8“ („Java SE 8“) buvo plačiausiai naudojama versija „Apache Tomcat“ aplinkai, todėl daugelis diegimų buvo nuo jos priklausomi.
Nuo 2019 m. sausio mėn. „Oracle“ pakeitė „Java SE 8“ licencijavimo sąlygas. Viešai prieinami atnaujinimai, skirti verslui, komerciniam ar gamybiniam naudojimui, dabar reikalauja mokamo prenumeratos.
Jei naudojate „Oracle JDK 8“ („Java SE 8“) ir neturite „Oracle“ prenumeratos, galite pereiti prie nemokamos, palaikomos alternatyvos (pavyzdžiui, „Amazon Corretto“).
Šiame straipsnyje aptariama diegimo „Windows“ aplinkoje procedūra. Informaciją apie „Linux“ sistemą rasite susijusiuose vadovuose apie JDK diegimą SUSE Linux Enterprise Server arba Debian.
Sprendimas
„ESET PROTECT On-Prem“ žiniatinklio konsolės palaikomos JDK ir „Apache Tomcat“ versijos
Norint paleisti „ESET PROTECT On-Prem“ žiniatinklio konsolę, reikalinga „Java Development Kit“ (JDK) teikiama „Java“ vykdymo aplinka ir suderinama „Apache Tomcat“ versija.
Rekomenduojame įdiegti:
- „Apache Tomcat“ 9.x. (naujausia stabili versija)
- JDK 17 arba 21 (LTS)
Daugiau informacijos apie JDK versijas rasite žemiau esančiame skyriuje „Palaikomos JDK versijos “.
Palaikomos JDK versijos
| Palaikoma JDK versija | „ESET PROTECT On-Prem“ versija |
| 17 |
10.x – 13.x
|
| 21 |
11.x – 13.x
|
| 25 |
13.1 ir vėlesnės versijos
|
„Oracle JDK “ alternatyvos (nemokamos versijos):
-
„Amazon Corretto“ 17 arba 21 (LTS)
Diegimo instrukcijas rasite skyriuje „Amazon Corretto JDK diegimas “.
-
„OpenJDK“ pagrįstos distribucijos, pavyzdžiui, „Eclipse Temurin“ 17 arba 21 (LTS)
Diegdami „OpenJDK“ distribuciją „Windows“ sistemoje naudodami
.msidiegimo programą, nustatymo vedlyje pasirinkite parinktį, leidžiančią nustatyti arba pakeisti aplinkos kintamąjį„JAVA_HOME“(paprastai tai daroma skyriuje „Custom setup“). Tai užtikrina, kad „Java“ diegimo kelias bus užregistruotas „Windows“ sistemoje, o „Apache Tomcat“ galės rasti JDK.
„Apache Tomcat“ naudojamos JDK versijos keitimas „ESET PROTECT On-Prem“ žiniatinklio konsolėje
-
Eikite į „Apache Tomcat“ aplanką (pavyzdžiui,
C:\Program Files\Apache Software Foundation\Tomcat 9.0). Atidarykite„bin“aplanką ir suraskitefailą „tomcat9w.exe“. Dukart spustelėkite failą, kad jį paleistumėte. Atsivers „Apache Tomcat Properties“ langas. -
Spustelėkite skirtuką „Bendrieji“ ir spustelėkite „Sustabdyti“, kad sustabdytumėte „Apache Tomcat“ paslaugą.
-
Pašalinkite esamą JDK.
-
Įdiekite naują JDK.
-
Grįžkite į „Apache Tomcat“ savybes ir spustelėkite skirtuką „Java “.
-
Lauke „Java Virtual Machine“ atnaujinkite kelią, kad jis rodytų į naujai įdiegtos JDK failą
„jvm.dll“(pavyzdžiui, „Amazon Corretto“ atveju –C:\Program Files\Amazon Corretto\jdk21.0.9_10\bin\server\jvm.dll). -
Spustelėkite skirtuką „General“ ir spustelėkite „Start“, kad paleistumėte „Apache Tomcat“ paslaugą.
-
Patikrinkite, ar galite prisijungti prie „ESET PROTECT On-Prem“ žiniatinklio konsolės.
Įdiekite „Amazon Corretto“ JDK
-
Atsisiųskite „Amazon Corretto 17“ arba „Amazon Corretto 21“ diegimo failą
„.msi“formatu, skirtą „Windows“ sistemai. -
Dukart spustelėkite diegimo failą, kad pradėtumėte diegimą.
-
Vykdykite diegimo veiksmus.
Galite nustatyti pasirinktinį diegimo kelią. Pagal numatytuosius nustatymus „Amazon Corretto 17“ diegiamas į katalogą
„C:\Program Files\Amazon Corretto\“. Jei nustatote pasirinktinį kelią, užsirašykite jį, kad galėtumėte jį naudoti kitame žingsnyje. -
Baigus diegimą, nustatykite aplinkos kintamuosius
„JAVA_HOME“ ir„PATH“.-
Nustatykite
„JAVA_HOME“į „Amazon Corretto“ diegimo katalogą.Pavyzdiniai katalogai:
- „Amazon Corretto 17“:
C:\Program Files\Amazon Corretto\jdk17.0.17_10 - „Amazon Corretto 21“:
C:\Program Files\Amazon Corretto\jdk21.0.9_11
- „Amazon Corretto 17“:
-
Pridėkite
%JAVA_HOME%\binįPATH.
-
-
Patikrinkite įdiegimą. Komandų eilutėje paleiskite:
java -versionTurėtumėte pamatyti tokį rezultatą (versijos numeriai gali skirtis):
-
„Amazon Corretto 17“:
openjdk version "17.0.17" 2025-10-21 LTS OpenJDK Runtime Environment Corretto-17.0.17.10.1 (build 17.0.17+10-LTS) OpenJDK 64-Bit Server VM Corretto-17.0.17.10.1 (versija 17.0.17+10-LTS, mišrus režimas, bendras naudojimas) -
„Amazon Corretto“ 21:
„OpenJDK“ versija „21.0.9“ 2025-10-21 LTS „OpenJDK“ vykdymo aplinka „Corretto-21.0.9.11.1“ (versija 21.0.9+11-LTS) „OpenJDK“ 64 bitų serverio VM „Corretto-21.0.9.11.1“ (versija 21.0.9+11-LTS, mišrusis režimas, bendras naudojimas)
-
Ištaisyta klaida „Nepavyko įkelti duomenų“ naudojant JDK 17 ar naujesnę versiją
Ši problema kyla, kai „ESET PROTECT On-Prem“ žiniatinklio konsolė veikia „Apache Tomcat“ aplinkoje su naujesnėmis JDK versijomis (JDK 17 ar naujesnėmis). Nuo „Java 9“ versijos „Java Platform Module System“ riboja refleksinę prieigą prie tam tikrų vidinių API, kurių reikalauja kai kurios žiniatinklio konsolės naudojamos bibliotekos.
Norėdami išspręsti šią problemą, turite į „Apache Tomcat“ „Java“ konfigūraciją įtraukti specialias --add-opens parinktis, kad šie moduliai liktų prieinami. Šias parinktis galite įtraukti per „Apache Tomcat“ paslaugos konfigūraciją (tomcat9w.exe), failą „catalina.bat“ arba „service.bat “.
Pridėkite --add-opens parinktis per „Apache Tomcat“ paslaugos konfigūraciją (tomcat9w.exe)
-
Eikite į „Apache Tomcat“ aplanką (pavyzdžiui,
C:\Program Files\Apache Software Foundation\Tomcat 9.0). Atidarykite„bin“aplanką ir suraskite failą „tomcat9w.exe“. Dvigubai spustelėkite failą, kad jį paleistumėte. -
Spustelėkite skirtuką „Java“ ir lauke „Java 9 Options“ įveskite šias reikšmes:
--add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
1-1 paveikslas Lauke „Java 9 Options “ dabar yra šios reikšmės:
--add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED - Spustelėkite „OK“.
Įtraukite --add-opens parinktis į failą „catalina.bat“
-
Eikite į „Apache Tomcat“ aplanką (pavyzdžiui,
C:\Program Files\Apache Software Foundation\Tomcat 9.0). Atidarykite„bin“aplanką ir suraskite failą„catalina.bat“. Atidarykite failą teksto redaktoriuje. -
Suraskite skyrių „rem Configure JAVA 9 specific start-up parameters “ ir įterpkite šias reikšmes:
set "JDK_JAVA_OPTIONS=%JDK_JAVA_OPTIONS% --add-opens=java.base/java.util=ALL-UNNAMED" set "JDK_JAVA_OPTIONS=%JDK_JAVA_OPTIONS% --add-opens=java.base/java.util.concurrent=ALL-UNNAMED"Skyriuje „Konfigūruoti JAVA 9 specifinius paleidimo parametrus“ dabar yra šios reikšmės:
set "JDK_JAVA_OPTIONS=%JDK_JAVA_OPTIONS% --add-opens=java.base/java.lang=ALL-UNNAMED" set "JDK_JAVA_OPTIONS=%JDK_JAVA_OPTIONS% --add-opens=java.base/java.io=ALL-UNNAMED" set "JDK_JAVA_OPTIONS=%JDK_JAVA_OPTIONS% --add-opens=java.base/java.util=ALL-UNNAMED" nustatyti „JDK_JAVA_OPTIONS=%JDK_JAVA_OPTIONS% --add-opens=java.base/java.util.concurrent=ALL-UNNAMED“ nustatykite „JDK_JAVA_OPTIONS=%JDK_JAVA_OPTIONS% --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED“ -
Išsaugokite pakeitimus.
Įtraukite --add-opens parinktis į failą service.bat
-
Eikite į „Apache Tomcat“ aplanką (pavyzdžiui,
C:\Program Files\Apache Software Foundation\Tomcat 9.0). Atidarykite„bin“aplanką ir suraskite failą„service.bat“. Atidarykite failą teksto redaktoriuje. -
Pereikite prie eilutės
--JvmOptions9ir pakeiskite ją taip:--JvmOptions9 "--add-opens=java.base/java.lang=ALL-UNNAMED#--add-opens=java.base/java.io=ALL-UNNAMED#--add-opens=java.base/java.util=ALL-UNNAMED#--add-opens=java.base/java.util.concurrent=ALL-UNNAMED#--add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED" ^ -
Išsaugokite pakeitimus.