Java代码如何在JRuby getResourceAsStream中从自己的jar中执行?

时间:2017-05-08 22:48:06

标签: java jruby

我正在使用JRuby,我无法从jar文件加载资源。

我加载了jar文件。 jar文件中的java代码尝试加载其自己的一个资源MyClass.class.getResourceAsStream(" / a_resource_inside_the_jar");这适用于纯java,但在JRuby rails应用程序中,它无法找到资源。这是一个错误吗?

  1. 我的rails应用程序需要jar
  2. 我的rails应用导入类MyClass
  3. 我的rails创建了MyClass的新实例,并在MyClass中调用了do_something方法。
  4. do_something方法在内部调用MyClass.class.getResourceAsStream(" /a_resource_inside_the_jar.txt")作为其业务逻辑的一部分。
  5. 不可避免地,我总是得到一个空输入流,即使相同的Java代码在没有Ruby的Java中工作。
  6. 解决这个问题的方法是什么,或者在jar文件中处理资源的正确方法是什么?

    有什么建议吗?

1 个答案:

答案 0 :(得分:0)

实际上,它应该工作相同,并且它的工作方式相同。我的资源名称中有一个拼写错误,因此它实际上并不存在,因此返回null。