本文整理了Java中org.jruby.Ruby.loadFile
方法的一些代码示例,展示了Ruby.loadFile
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Ruby.loadFile
方法的具体详情如下:
包路径:org.jruby.Ruby
类名称:Ruby
方法名:loadFile
暂无
代码示例来源:origin: com.proofpoint.platform/rack
private void loadRubyScript(String scriptName)
throws IOException
{
try (InputStream stream = Resources.getResource("proofpoint/" + scriptName).openStream()) {
runtime.loadFile(scriptName, stream, false);
}
}
代码示例来源:origin: com.proofpoint.platform/rack-experimental
@Inject
public RackServlet(RackServletConfig config)
throws IOException
{
Preconditions.checkNotNull(config);
File rackScriptFile = new File(config.getRackConfigPath());
Preconditions.checkArgument(rackScriptFile.canRead(), "Could not find rack script specified by [" + config.getRackConfigPath()
+ "] and resolved to [" + rackScriptFile.getAbsolutePath() + "]");
runtime = JavaEmbedUtils.initialize(ImmutableList.of(rackScriptFile.getParentFile().getCanonicalPath()), createRuntimeConfig());
// don't inherit system settings for gems
RubyHash env = runtime.evalScriptlet("ENV").convertToHash();
env.remove("GEM_HOME");
env.remove("GEM_PATH");
InputStream stream = Resources.getResource("proofpoint/rack.rb").openStream();
try {
runtime.loadFile("rack.rb", stream, false);
}
finally {
stream.close();
}
IRubyObject builder = runtime.evalScriptlet("Proofpoint::RackServer::Builder.new");
rackApplication = adapter.callMethod(builder, "build", new IRubyObject[] {
javaToRuby(runtime, rackScriptFile.getCanonicalPath())
});
}
代码示例来源:origin: io.airlift/rack-experimental
@Inject
public RackServlet(RackServletConfig config)
throws IOException
{
Preconditions.checkNotNull(config);
File rackScriptFile = new File(config.getRackConfigPath());
Preconditions.checkArgument(rackScriptFile.canRead(), "Could not find rack script specified by [" + config.getRackConfigPath()
+ "] and resolved to [" + rackScriptFile.getAbsolutePath() + "]");
runtime = JavaEmbedUtils.initialize(ImmutableList.of(rackScriptFile.getParentFile().getCanonicalPath()), createRuntimeConfig());
// don't inherit system settings for gems
RubyHash env = runtime.evalScriptlet("ENV").convertToHash();
env.remove("GEM_HOME");
env.remove("GEM_PATH");
InputStream stream = Resources.getResource("io/airlift/rack.rb").openStream();
try {
runtime.loadFile("rack.rb", stream, false);
}
finally {
stream.close();
}
IRubyObject builder = runtime.evalScriptlet("Airlift::RackServer::Builder.new");
rackApplication = adapter.callMethod(builder, "build", new IRubyObject[] {
javaToRuby(runtime, rackScriptFile.getCanonicalPath())
});
}
代码示例来源:origin: io.airlift/rack
@Inject
public RackServlet(RackServletConfig config)
throws IOException
{
Preconditions.checkNotNull(config);
File rackScriptFile = new File(config.getRackConfigPath());
Preconditions.checkArgument(rackScriptFile.canRead(), "Could not find rack script specified by [" + config.getRackConfigPath()
+ "] and resolved to [" + rackScriptFile.getAbsolutePath() + "]");
runtime = JavaEmbedUtils.initialize(ImmutableList.of(rackScriptFile.getParentFile().getCanonicalPath()), createRuntimeConfig());
// don't inherit system settings for gems
RubyHash env = runtime.evalScriptlet("ENV").convertToHash();
env.remove("GEM_HOME");
env.remove("GEM_PATH");
InputStream stream = Resources.getResource("io/airlift/rack.rb").openStream();
try {
runtime.loadFile("rack.rb", stream, false);
}
finally {
stream.close();
}
IRubyObject builder = runtime.evalScriptlet("Airlift::RackServer::Builder.new");
rackApplication = adapter.callMethod(builder, "build", new IRubyObject[] {
javaToRuby(runtime, rackScriptFile.getCanonicalPath())
});
}
代码示例来源: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) {}
}
}
内容来源于网络,如有侵权,请联系作者删除!