如何使用 JRuby 运行 Java 项目中现有的 Ruby 脚本?
How to run an existing Ruby script in a Java project using JRuby?
我正在尝试使用 JRuby 运行 Java 项目中的现有 Ruby 脚本。我找到的所有示例都即时编写了一个 Ruby 脚本并且 运行 就像这样:
ScriptingContainer container = new ScriptingContainer();
container.runScriptlet("puts 'hello world'");
但是我想要 运行 现有的 Ruby 脚本。没有任何运气。这是我一直在尝试的:
ScriptingContainer container = new ScriptingContainer();
container.runScriptlet("/path/to/file/test.rb");
我的 test.rb
文件如下所示:
#!/usr/bin/env jruby
puts "hi"
从the API docs, runScriptlet
has several forms; if you want it to execute a file, it needs two parameters可以看出;在你的情况下,
container.runScriptlet(PathType.ABSOLUTE, "/path/to/file/test.rb");
tl;dr:如有疑问,请查看文档。
我正在尝试使用 JRuby 运行 Java 项目中的现有 Ruby 脚本。我找到的所有示例都即时编写了一个 Ruby 脚本并且 运行 就像这样:
ScriptingContainer container = new ScriptingContainer();
container.runScriptlet("puts 'hello world'");
但是我想要 运行 现有的 Ruby 脚本。没有任何运气。这是我一直在尝试的:
ScriptingContainer container = new ScriptingContainer();
container.runScriptlet("/path/to/file/test.rb");
我的 test.rb
文件如下所示:
#!/usr/bin/env jruby
puts "hi"
从the API docs, runScriptlet
has several forms; if you want it to execute a file, it needs two parameters可以看出;在你的情况下,
container.runScriptlet(PathType.ABSOLUTE, "/path/to/file/test.rb");
tl;dr:如有疑问,请查看文档。