/**
* Runs launches "fx:bootstrap.js" with the given JavaScript files provided
* as arguments.
*
* @param context the nashorn context
* @param global the global scope
* @param files the list of script files to provide
*
* @return error code
* @throws IOException when any script file read results in I/O error
*/
private static int runFXScripts(final Context context, final Global global, final List<String> files) throws IOException {
final Global oldGlobal = Context.getGlobal();
final boolean globalChanged = (oldGlobal != global);
try {
if (globalChanged) {
Context.setGlobal(global);
}
global.addOwnProperty("$GLOBAL", Property.NOT_ENUMERABLE, global);
global.addOwnProperty("$SCRIPTS", Property.NOT_ENUMERABLE, files);
context.load(global, "fx:bootstrap.js");
} catch (final NashornException e) {
context.getErrorManager().error(e.toString());
if (context.getEnv()._dump_on_error) {
e.printStackTrace(context.getErr());
}
return RUNTIME_ERROR;
} finally {
context.getOut().flush();
context.getErr().flush();
if (globalChanged) {
Context.setGlobal(oldGlobal);
}
}
return SUCCESS;
}
Shell.java 文件源码
java
阅读 31
收藏 0
点赞 0
评论 0
项目:openjdk-jdk10
作者:
评论列表
文章目录