Aquí está mi código completo:
import javax.script.*; public class TestF { public static void main(String[] args) throws Exception { // create a script engine manager ScriptEngineManager factory = new ScriptEngineManager(); // create a Nashorn script engine ScriptEngine engine = factory.getEngineByName("nashorn"); // evaluate JavaScript statement try { engine.eval("print('Hello, World!');"); } catch (final ScriptException se) { se.printStackTrace(); } } }Estoy usando Arch y acabo de descargar Java y tengo la extensión de Java en VSCode. Puedo ejecutar cualquier otro programa en Java pero no he instalado ningún módulo/paquete externo. Ejecutar el programa anterior me da
Exception in thread "main" java.lang.NullPointerException: Cannot invoke "javax.script.ScriptEngine.eval(String)" because "<local2>" is null Parece que factory.getEngineByName("nashorn") devuelve nulo. ¿Necesito descargar Nashorn de forma externa? Porque esto dice que ya está incluido automáticamente. ¿O ya no se admite nashorn? Porque esto dice que todavía puedo usarlo. Estoy usando la última versión de Java18 de su sitio web oficial.