示例#1
0
  /**
   * Set explicit class loader to use when searching for Java classes.
   *
   * @see #getApplicationClassLoader()
   */
  public final void initApplicationClassLoader(ClassLoader loader) {
    if (loader == null) throw new IllegalArgumentException("loader is null");
    if (!Kit.testIfCanLoadRhinoClasses(loader))
      throw new IllegalArgumentException("Loader can not resolve Rhino classes");

    if (this.applicationClassLoader != null)
      throw new IllegalStateException("applicationClassLoader can only be set once");
    checkNotSealed();

    this.applicationClassLoader = loader;
  }