Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
实例化RInScala会导致NoSuchMethodError_R_Scala - Fatal编程技术网

实例化RInScala会导致NoSuchMethodError

实例化RInScala会导致NoSuchMethodError,r,scala,R,Scala,我正试图使用JVMR将R集成到Scala中。我在尝试实例化Rincala时遇到NoSuchMethodError 我在Windows 7计算机上工作,R安装在C:\Program Files\R\R-3.1.1下,Scala版本2.11.1安装在C:\Program Files(x86)\Scala下。我正在使用Scala插件在IntelliJ中进行开发,并使用Scala工作表作为POC进行测试。我的Scala项目将JVMR2.11-2.11.1.1.jar显示为一个包含的库。该工作表目前非常基

我正试图使用JVMR将R集成到Scala中。我在尝试实例化Rincala时遇到NoSuchMethodError

我在Windows 7计算机上工作,R安装在C:\Program Files\R\R-3.1.1下,Scala版本2.11.1安装在C:\Program Files(x86)\Scala下。我正在使用Scala插件在IntelliJ中进行开发,并使用Scala工作表作为POC进行测试。我的Scala项目将JVMR2.11-2.11.1.1.jar显示为一个包含的库。该工作表目前非常基本-只是导入和实例化尝试

import org.ddahl.jvmr.RInScala
val R = RInScala()
在IntelliJ中运行工作表时,我看到以下输出,因此我可以判断它正在成功导入类,但无法实例化

import org.ddahl.jvmr.RInScala
java.lang.NoSuchMethodError: scala.runtime.ObjectRef.create(Ljava/lang/Object;)Lscala/runtime/ObjectRef;
at org.ddahl.jvmr.RInScala$.findROnWindows(RInScalaTest.sc2318647708135405919.tmp:804)
at org.ddahl.jvmr.RInScala$.defaultExecutable$lzycompute(RInScalaTest.sc2318647708135405919.tmp:822)
at org.ddahl.jvmr.RInScala$.defaultExecutable(RInScalaTest.sc2318647708135405919.tmp:821)
at org.ddahl.jvmr.RInScala.<init>(RInScalaTest.sc2318647708135405919.tmp:28)
at org.ddahl.jvmr.RInScala$.apply(RInScalaTest.sc2318647708135405919.tmp:838)
at com.xxxx.r_in_scala.A$A1$A$A1.R$lzycompute(RInScalaTest.sc2318647708135405919.tmp:2)
at com.xxxx.r_in_scala.A$A1$A$A1.R(RInScalaTest.sc2318647708135405919.tmp:2)
at com.xxxx.r_in_scala.A$A1$A$A1.get$$instance$$R(RInScalaTest.sc2318647708135405919.tmp:2)
at #worksheet#.#worksheet#(RInScalaTest.sc2318647708135405919.tmp:10)
import org.ddahl.jvmr.rincala
java.lang.NoSuchMethodError:scala.runtime.ObjectRef.create(Ljava/lang/Object;)Lscala/runtime/ObjectRef;
在org.ddahl.jvmr.RInScala$.findROnWindows上(RInScalaTest.sc2318647708135405919.tmp:804)
位于org.ddahl.jvmr.RInScala$.defaultExecutable$lzycompute(RInScalaTest.sc2318647708135405919.tmp:822)
位于org.ddahl.jvmr.RInScala$.defaultExecutable(RInScalaTest.sc2318647708135405919.tmp:821)
位于org.ddahl.jvmr.RInScala(RInScalaTest.sc2318647708135405919.tmp:28)
请访问org.ddahl.jvmr.RInScala$.apply(RInScalaTest.sc2318647708135405919.tmp:838)
在com.xxxx.r_in_scala.A$A1$A1.r$lzycompute(RInScalaTest.sc2318647708135405919.tmp:2)
在com.xxxx.r_in_scala.A$A1$A1.r(RInScalaTest.sc2318647708135405919.tmp:2)
在com.xxxx.r_in_scala.A$A1$A1.get$$instance$$r(RInScalaTest.sc2318647708135405919.tmp:2)
在#工作表#.#工作表#(RInScalaTest.sc2318647708135405919.tmp:10)

我已经钻研了findROnWindows的代码,应该根据正在读取的注册表项的值找到我的安装。我肯定我错过了一些简单的东西,但我正处于“我一直在看问题太久而没有弄清楚它,只需要一双新眼睛”的阶段。

据我所知,这是IntelliJ工作表实现中的某种错误,或者说是一种错误配置。要验证: 将代码放入对象中

package starter
object Test extends App {
  import org.ddahl.jvmr.RInScala
  val R = RInScala()
  println("works")
}
并尝试将其作为scala应用程序运行,而不是从工作表运行