无法在 C# 中使用 rDotNet 在 R 脚本中加载 rjava
failing to load rjava in R script using rDotNet in C#
我正在使用 c# 和 R.NET.Community 包从 c# 应用程序到 运行 R 脚本,我可以 运行 任何不引用 rjava 库的脚本,但下面的代码当脚本包含 Library(rJava) 行并给我 RDotNet.EvaluationException: 'Error: package or namespace load failed for 'rJava', error: unable to load shared object 'C:/Users/..../Documents/R/win-library/3.4/rJava/libs/i386/rJava.dll' 时,下面的代码崩溃了,我可以 运行 Rstudio 中的脚本,没有错误并且输出正确,但是当 运行 使用 RDotNet 和 C#
连接它时它会给出这个错误
REngine engine = REngine.GetInstance();
rfile = rfile.Replace("\", "/");
engine.Evaluate("source('" + rfile + "')");
问题是我的脚本分配了大量内存,因此使用 java (x64) 版本,而我的应用程序是 运行 java 的 32 版本,因此无法使用要分配该内存,我所做的只是通过右键单击项目然后单击属性并从 build set target to x64 打开项目属性。
我正在使用 c# 和 R.NET.Community 包从 c# 应用程序到 运行 R 脚本,我可以 运行 任何不引用 rjava 库的脚本,但下面的代码当脚本包含 Library(rJava) 行并给我 RDotNet.EvaluationException: 'Error: package or namespace load failed for 'rJava', error: unable to load shared object 'C:/Users/..../Documents/R/win-library/3.4/rJava/libs/i386/rJava.dll' 时,下面的代码崩溃了,我可以 运行 Rstudio 中的脚本,没有错误并且输出正确,但是当 运行 使用 RDotNet 和 C#
连接它时它会给出这个错误REngine engine = REngine.GetInstance();
rfile = rfile.Replace("\", "/");
engine.Evaluate("source('" + rfile + "')");
问题是我的脚本分配了大量内存,因此使用 java (x64) 版本,而我的应用程序是 运行 java 的 32 版本,因此无法使用要分配该内存,我所做的只是通过右键单击项目然后单击属性并从 build set target to x64 打开项目属性。