Nashorn, JavaScript-motoren for Java Virtual Machine, kan avvikles etter å ha blitt foreldet av nyere teknologier.
Nashorn debuterte i Java Development Kit (JDK) 8 i 2014. Det har økt kompatibiliteten mellom Java og JavaScript, samtidig som det gir ytelsesfordeler. Men det raske tempoet i endring av ECMAScript-språkkonstruksjoner og API-er har gjort det "utfordrende" å opprettholde Nashorn, ifølge det offisielle avskrivningsforslaget som ble svevet i OpenJDK Java-samfunnet.
Det er også andre implementeringer av JavaScript som Java-applikasjoner kan bruke. For eksempel kan GraalJS snart være tilgjengelig som en modul for utviklere. Den bruker Oracle's Truffle-bibliotek for å implementere språk og gir det meste av den samme funksjonaliteten som Nashorn. Men det er ingen nåværende planer om å legge til GraalJS eller noen annen ny JavaScript-implementering til selve JDK.
Nashorns API-er og JJS-verktøyet skal også avskaffes. Ikke påvirket av avskrivningen er javax.script
API for skripting.
Ved å fjerne Nashorn kan det hende at enkelte applikasjoner ikke lenger kjøres på grunn av en forventning om JavaScript. Hvor mye Nashorn har blitt brukt har ikke vært lett å spore, så Java-fellesskapsprosessen søker informasjon om dens faktiske bruk.
De spesifikke modulene som skal avvikles inkluderer:
scripting.nashorn -
, som inneholderjdk.nashorn.api.scripting
ogjdk.nashorn.api.tree
pakker.- s
cripting.nashorn.shell -
, som inneholder JJS-verktøyet. jdk.dynalink -
, som har Dynalink-støttebiblioteket.