【发布时间】:2019-01-07 11:51:06
【问题描述】:
我创建了一个 .java 文件,它使用 .jar 作为 Eclipse 的外部库文件。我只需要 .java 中的一点公共静态函数就可以在 R 中运行,也许来自 R 中的“jobject”调用?有没有人怎么做?
最接近的解决方案来自https://stackoverflow.com/a/20291982/2842390:
library(rJava) .jinit(PATH_TO_YOUR_JAR) # this starts the JVM
jobject <- .jnew("yourJavaClass") ## call the constructor
.jcall(jobject ,"I",method="YOUR_METHOD") ## call a method
但我不能将我的 .java 文件放在“yourJavaClass”中,因为它会导致 .jnew("hello3.java") 中出现错误:java.lang.ClassNotFoundException。
非常感谢您的帮助!
【问题讨论】:
-
嗨,欢迎来到stackoverflow,“R”是什么意思?你是说R语言?然后搜索 2 分钟 ...
jar-stackoverflow.com/questions/20291904/… 和java- stackoverflow.com/questions/10319067/… 显示一些努力,- 看看 How to ask 和 minimal reproducible example :) -
谢谢!但我的问题是我已经有了 .jar,现在我需要在 .java 文件中运行特定函数但我找不到任何类似的情况。
-
啊,那不一样了,但我不认为这是可能的由于逻辑和安全原因stackoverflow.com/questions/7950538/… jars 可以在开发过程中导入到项目中,然后您将可以访问里面的公共方法,但在这种情况下,你唯一能做的就是制作一些“库” - jar,并在运行期间将它们添加到程序类路径中,如果它们不会被链接包含在 jar 中。但这不是你想要的。