@Nullable protected ScriptEngine retrieveScriptEngine(ScriptSource scriptSource) { ScriptEngineManager scriptEngineManager = new ScriptEngineManager(this.beanClassLoader); if (this.scriptEngineName != null) { return StandardScriptUtils.retrieveEngineByName(scriptEngineManager, this.scriptEngineName); } if (scriptSource instanceof ResourceScriptSource) { String filename = ((ResourceScriptSource) scriptSource).getResource().getFilename(); if (filename != null) { String extension = StringUtils.getFilenameExtension(filename); if (extension != null) { ScriptEngine engine = scriptEngineManager.getEngineByExtension(extension); if (engine != null) { return engine; } } } } return null; }
"No script language defined, and no file extension defined for resource: " + resource); ScriptEngine engine = scriptEngineManager.getEngineByExtension(extension); if (engine == null) { throw new IllegalStateException("No matching engine found for file extension '" + extension + "'");
/** * 构造 * * @param nameOrExtOrMime 脚本名或者脚本语言扩展名或者MineType */ public FullSupportScriptEngine(String nameOrExtOrMime) { final ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine engine = manager.getEngineByName(nameOrExtOrMime); if (null == engine) { engine = manager.getEngineByExtension(nameOrExtOrMime); } if (null == engine) { engine = manager.getEngineByMimeType(nameOrExtOrMime); } if (null == engine) { throw new NullPointerException(StrUtil.format("Script for [{}] not support !", nameOrExtOrMime)); } this.engine = engine; }
/** * 构造 * * @param nameOrExtOrMime 脚本名或者脚本语言扩展名或者MineType */ public FullSupportScriptEngine(String nameOrExtOrMime) { final ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine engine = manager.getEngineByName(nameOrExtOrMime); if (null == engine) { engine = manager.getEngineByExtension(nameOrExtOrMime); } if (null == engine) { engine = manager.getEngineByMimeType(nameOrExtOrMime); } if (null == engine) { throw new NullPointerException(StrUtil.format("Script for [{}] not support !", nameOrExtOrMime)); } this.engine = engine; }
@Nullable protected ScriptEngine retrieveScriptEngine(ScriptSource scriptSource) { ScriptEngineManager scriptEngineManager = new ScriptEngineManager(this.beanClassLoader); if (this.scriptEngineName != null) { return StandardScriptUtils.retrieveEngineByName(scriptEngineManager, this.scriptEngineName); } if (scriptSource instanceof ResourceScriptSource) { String filename = ((ResourceScriptSource) scriptSource).getResource().getFilename(); if (filename != null) { String extension = StringUtils.getFilenameExtension(filename); if (extension != null) { ScriptEngine engine = scriptEngineManager.getEngineByExtension(extension); if (engine != null) { return engine; } } } } return null; }
"No script language defined, and no file extension defined for resource: " + resource); ScriptEngine engine = scriptEngineManager.getEngineByExtension(extension); if (engine == null) { throw new IllegalStateException("No matching engine found for file extension '" + extension + "'");
ScriptEngine createScriptEngine(String engine) { ScriptEngine scriptEngine = scriptEngineManager.getEngineByName(engine); if (scriptEngine == null) { scriptEngine = scriptEngineManager.getEngineByExtension(engine); } if (scriptEngine == null) { scriptEngine = scriptEngineManager.getEngineByMimeType(engine); } Preconditions.notNull(scriptEngine, () -> "Script engine not found: " + engine); Bindings bindings = scriptEngine.getBindings(ScriptContext.GLOBAL_SCOPE); bindings.put(Script.BIND_SYSTEM_PROPERTY, systemPropertyAccessor); bindings.put(Script.BIND_SYSTEM_ENVIRONMENT, environmentVariableAccessor); return scriptEngine; }
ScriptEngine engine = MANAGER.getEngineByExtension(extension); if(engine==null) { return false;
public static void main(String[] args) throws IOException, ScriptException { File scriptFile = new File(args[0]); ScriptEngineManager sem = new ScriptEngineManager(); String ext = Files.getFileExtension(scriptFile.getName()); ScriptEngine engine = sem.getEngineByExtension(ext); engine.put("cmdArgs", Arrays.asList(args).subList(1, args.length)); try (Reader reader = Files.newReader(scriptFile, Charsets.UTF_8)) { engine.eval(reader); } } }
private String getLanguageFromFileExtension(String scriptLocation, ParserContext parserContext, Element element) { ScriptEngineManager engineManager = new ScriptEngineManager(); ScriptEngine engine = null; int index = scriptLocation.lastIndexOf(".") + 1; if (index < 1) { return null; } String extension = scriptLocation.substring(index); engine = engineManager.getEngineByExtension(extension); if (engine == null) { parserContext.getReaderContext().error( "No suitable scripting engine found for extension '" + extension + "'", element); } return engine.getFactory().getLanguageName(); } }
scriptEngine = sem.getEngineByExtension(".lua");
File scriptFile = options.get("script"); String ext = Files.getFileExtension(scriptFile.getName()); ScriptEngine seng = sem.getEngineByExtension(ext); logger.info("running {} with engine {}", scriptFile, seng); SimpleBindings bindings = new SimpleBindings();
private ScriptEngine getScriptEngine() throws SchemaCrawlerException { final String scriptFileName = outputOptions.getOutputFormatValue(); if (isBlank(scriptFileName)) { throw new SchemaCrawlerCommandLineException("Please specify a script to execute"); } final String scriptExtension = getFileExtension(scriptFileName); final ScriptEngineManager scriptEngineManager = new ScriptEngineManager(); final ScriptEngine scriptEngine; if (isBlank(scriptExtension)) { scriptEngine = scriptEngineManager.getEngineByName("nashorn"); } else { scriptEngine = scriptEngineManager.getEngineByExtension(scriptExtension); } if (scriptEngine == null) { throw new SchemaCrawlerException("Script engine not found"); } logScriptEngineDetails(Level.CONFIG, scriptEngine.getFactory()); return scriptEngine; }
String code="echo 5+5;"; //sample bit of code ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine engine = manager.getEngineByExtension("php"); try { engine.eval(code); } catch (ScriptException ex) { //catch statement }
@Override @Nonnull public ScriptEngine engineForExtension(final String extension) { checkNotNull(extension); log.trace("Resolving engine for extension: {}", extension); ScriptEngine engine = engineManager.getEngineByExtension(extension); checkState(engine != null, "Missing engine for extension: %s", extension); log.trace("Engine: {}", engine); return engine; }
public ScriptEngine getEngineByExtension(String extension) { //TODO this is a hack to deal with context class loader issues ScriptEngine engine=null; for(ScriptEngineManager manager: classLoaders.keySet()){ ClassLoader old=Thread.currentThread().getContextClassLoader(); Thread.currentThread().setContextClassLoader(classLoaders.get(manager)); engine=manager.getEngineByExtension(extension); Thread.currentThread().setContextClassLoader(old); if (engine!=null) break; } return engine; }
public static void main(String[] args) throws FileNotFoundException { ScriptEngineManager sem = new ScriptEngineManager(); ScriptEngine ruby = sem.getEngineByExtension("rb"); try { FileReader reader = new FileReader(new File("src/main/jruby", "hello_jena.rb")); ruby.eval(reader); } catch (ScriptException ex) { ex.printStackTrace(); } } }
public static void main(String[] args) throws FileNotFoundException { ScriptEngineManager sem = new ScriptEngineManager(); ScriptEngine ruby = sem.getEngineByExtension("rb"); try { FileReader reader = new FileReader(new File("src/main/ruby", "hello_world.rb")); ruby.eval(reader); } catch (ScriptException ex) { ex.printStackTrace(); } } }
JavascriptEvaluator() throws UDFArgumentException { ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine engine = manager.getEngineByExtension("js"); if (!(engine instanceof Compilable)) { throw new UDFArgumentException( "ScriptEngine was not compilable: " + engine.getFactory().getEngineName() + " version " + engine.getFactory().getEngineVersion()); } this.scriptEngine = engine; this.compilableEngine = (Compilable) engine; }