【发布时间】:2015-06-12 10:22:09
【问题描述】:
我有一个在 Ubuntu 14.10 上运行的闪亮应用程序,我需要连接到 SQL Server 数据库。我正在使用 JDBC 进行连接。
在应用程序之外(在控制台中)我已经能够安装 JDBC 包及其依赖项、加载它、连接和查询数据库,没有任何问题。
但是,当我尝试在闪亮服务器上运行的闪亮应用中执行此操作时,应用无法加载,并且我从浏览器中收到以下错误:
Listening on http://127.0.0.1:51925
Loading required package: DBI
Loading required package: rJava
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: dyn.load(file, DLLpath = DLLpath, ...)
error: unable to load shared object '/usr/local/lib/R/site-library/rJava/libs/rJava.so':
libjvm.so: cannot open shared object file: No such file or directory
发生错误是因为 rJava 未加载。但是,当我以“shiny”用户身份从控制台运行时,rJava 和 RJDBC 都可以正常加载。
有什么建议吗?
【问题讨论】:
-
您能说明如何在控制台和应用程序中调用它吗?
-
@martin 在这两种情况下我只是使用
library(RJDBC)来加载,但是它不会成功加载到应用程序中。 -
它报告的文件夹是您的库的安装位置吗? .libPaths() 的发布输出
-
对于闪亮的用户:
[1] "/home/shiny/R/x86_64-pc-linux-gnu-library/3.1" [2] "/usr/local/lib/R/site-library" [3] "/usr/lib/R/site-library" [4] "/usr/lib/R/library"另外,确认每个都有 rJava。 -
对此进行更新:我能够使用 ODBC 让我的应用程序正常工作,这似乎没有任何问题。
标签: r shiny shiny-server rjava rjdbc