org.jruby.Ruby.compileAndLoadFile()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(3.9k)|赞(0)|评价(0)|浏览(125)

本文整理了Java中org.jruby.Ruby.compileAndLoadFile方法的一些代码示例,展示了Ruby.compileAndLoadFile的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Ruby.compileAndLoadFile方法的具体详情如下:
包路径:org.jruby.Ruby
类名称:Ruby
方法名:compileAndLoadFile

Ruby.compileAndLoadFile介绍

暂无

代码示例

代码示例来源:origin: org.jruby/jruby-complete

@Override
  public void load(Ruby runtime, boolean wrap) {
    InputStream ris = null;
    try {
      ris = resource.inputStream();
      if (runtime.getInstanceConfig().getCompileMode().shouldPrecompileAll()) {
        runtime.compileAndLoadFile(scriptName, ris, wrap);
      } else {
        runtime.loadFile(scriptName, new LoadServiceResourceInputStream(ris), wrap);
      }
    } catch(IOException e) {
      throw runtime.newLoadError("no such file to load -- " + searchName, searchName);
    } finally {
      try {
        if (ris != null) ris.close();
      } catch (IOException ioE) { /* At least we tried.... */}
    }
  }
}

代码示例来源:origin: org.jruby/jruby-core

@Override
  public void load(Ruby runtime, boolean wrap) {
    InputStream ris = null;
    try {
      ris = resource.inputStream();
      if (runtime.getInstanceConfig().getCompileMode().shouldPrecompileAll()) {
        runtime.compileAndLoadFile(scriptName, ris, wrap);
      } else {
        runtime.loadFile(scriptName, new LoadServiceResourceInputStream(ris), wrap);
      }
    } catch(IOException e) {
      throw runtime.newLoadError("no such file to load -- " + searchName, searchName);
    } finally {
      try {
        if (ris != null) ris.close();
      } catch (IOException ioE) { /* At least we tried.... */}
    }
  }
}

代码示例来源:origin: com.ning.billing/killbill-osgi-bundles-jruby

public void load(Ruby runtime, boolean wrap) {
  InputStream in = null;
  try {
    in = resource.getInputStream();
    String name = normalizeSeps(resource.getName());
    if (runtime.getInstanceConfig().getCompileMode().shouldPrecompileAll()) {
      runtime.compileAndLoadFile(name, in, wrap);
    } else {
      java.io.File path = resource.getPath();
      if(path != null && !resource.isAbsolute()) {
        // Note: We use RubyFile's canonicalize rather than Java's,
        // because Java's will follow symlinks and result in __FILE__
        // being set to the target of the symlink rather than the
        // filename provided.
        name = normalizeSeps(canonicalize(path.getPath()));
      }
      runtime.loadFile(name, in, wrap);
    }
  } catch (IOException e) {
    throw runtime.newIOErrorFromException(e);
  } finally {
    try { in.close(); } catch (Exception ex) {}
  }
}

代码示例来源:origin: org.jruby/jruby-complete

public void load(Ruby runtime, boolean wrap) {
  InputStream in = null;
  try {
    in = resource.getInputStream();
    String name = resource.getName();
    if (runtime.getInstanceConfig().getCompileMode().shouldPrecompileAll()) {
      runtime.compileAndLoadFile(name, in, wrap);
    } else {
      name = CompiledScriptLoader.getFilenameFromPathAndName(resource.getPath(), name, resource.isAbsolute());
      runtime.loadFile(name, new LoadServiceResourceInputStream(in), wrap);
    }
  } catch (IOException e) {
    throw runtime.newIOErrorFromException(e);
  } finally {
    try { in.close(); } catch (Exception ex) {}
  }
}

代码示例来源:origin: org.kill-bill.billing/killbill-osgi-bundles-jruby

public void load(Ruby runtime, boolean wrap) {
  InputStream in = null;
  try {
    in = resource.getInputStream();
    String name = normalizeSeps(resource.getName());
    if (runtime.getInstanceConfig().getCompileMode().shouldPrecompileAll()) {
      runtime.compileAndLoadFile(name, in, wrap);
    } else {
      java.io.File path = resource.getPath();
      if(path != null && !resource.isAbsolute()) {
        // Note: We use RubyFile's canonicalize rather than Java's,
        // because Java's will follow symlinks and result in __FILE__
        // being set to the target of the symlink rather than the
        // filename provided.
        name = normalizeSeps(canonicalize(path.getPath()));
      }
      runtime.loadFile(name, in, wrap);
    }
  } catch (IOException e) {
    throw runtime.newIOErrorFromException(e);
  } finally {
    try { in.close(); } catch (Exception ex) {}
  }
}

代码示例来源:origin: org.jruby/jruby-core

public void load(Ruby runtime, boolean wrap) {
  InputStream in = null;
  try {
    in = resource.getInputStream();
    String name = resource.getName();
    if (runtime.getInstanceConfig().getCompileMode().shouldPrecompileAll()) {
      runtime.compileAndLoadFile(name, in, wrap);
    } else {
      name = CompiledScriptLoader.getFilenameFromPathAndName(resource.getPath(), name, resource.isAbsolute());
      runtime.loadFile(name, new LoadServiceResourceInputStream(in), wrap);
    }
  } catch (IOException e) {
    throw runtime.newIOErrorFromException(e);
  } finally {
    try { in.close(); } catch (Exception ex) {}
  }
}

相关文章

微信公众号

最新文章

更多

Ruby类方法