c# - 在 docker/Debian 上的 r.net 中设置 R 主目录很热?
问题描述
我尝试在支持 docker 的 asp.net Razor 应用程序中使用 R.Net。docker镜像是Debian 10,R安装在镜像的标准路径下/usr/lib/R
。执行时
REngine.SetEnvironmentVariables(rHome:"/usr/lib/R"); // or any other path including none
REngine engine = REngine.GetInstance();
我得到错误R home directory is not defined
。如果我在容器中打开一个 shell 并启动 R,则R.home()
返回/usr/lib/R
. 所以看起来容器中的 R 有一个 R 主目录集,但 r.net 没有识别它?有什么想法我可以尝试解决这个问题吗?
解决方案
您很可能以错误的方式调用 R。Use /usr/bin/R
which 是一个前端,它设置R_HOME
为供其他组件进一步使用。
edd@rob:~$ file /usr/bin/R
/usr/bin/R: Bourne-Again shell script, ASCII text executable
edd@rob:~$ grep ^R_HOME /usr/bin/R
R_HOME_DIR=/usr/lib/R
R_HOME="${R_HOME_DIR}"
edd@rob:~$
推荐阅读
- mediawiki - 使用自定义路由教程创建自定义端点
- c# - 表单数据名称问题
- keras - 如何在训练期间更改批量大小?
- netlogo - 如何从依赖于属性的代理集中进行选择?
- java - 2 个下拉列表的相同 ID 无法执行操作 om 2 one
- google-colaboratory - Google.colab 中的 77Giga 数据加载
- stripe-payments - 将账户与 Stripe 关联
- mongodb - 将 mongoDB 链接到 elasticbeanstalk 应用程序
- java - 添加到 SQLite 数据库时不允许重复
- arduino - 从 Processing 向 Arduino 发送两个数组