R Packrat 无法加载私有库
R Packrat Fails to load private library
我已经使用 R 开发了一个解决方案,并想将其传输到没有 Internet 连接的生产服务器 (CentOS 7) 来安装软件包。为了方便安装包,我使用 packrat 将我在 R 脚本中使用的包捆绑到项目中。
使用 packrat::bundle(),我创建了项目的 tar 文件并将文件移动到服务器并解压 tar zip 文件。
根据 Blogger 中的 post,一旦我打开项目,When R is started from that directory, Packrat will do its magic and make sure the software environment is the same as on the source machine.
但是,当我在服务器(使用 R-Studio Server 0.99)中打开项目时,什么也没有发生,它会抛出未知包错误。
当手动执行下面的 "packarat/init.R" 文件时会抛出错误
Error in ensurePackageSymlink(source, target) :
Target '/home/R_Projects/prjName/packrat/lib-R/base' already exists and is not a symlink
嗯,找到问题并解决了。 symlink 错误与 centOS 有关(与 R 无关)。我只是简单地删除了
中的所有文件夹
/home/R_Projects/prjName/packrat/lib-R
因为这些文件夹存在,所以 packrat 无法在 lib-R 文件夹中创建同名的 symlink。如果我删除它们,它将创建一个 link(快捷方式)到 r 包所在的实际文件夹。
希望对以后的读者有所帮助。
我已经使用 R 开发了一个解决方案,并想将其传输到没有 Internet 连接的生产服务器 (CentOS 7) 来安装软件包。为了方便安装包,我使用 packrat 将我在 R 脚本中使用的包捆绑到项目中。
使用 packrat::bundle(),我创建了项目的 tar 文件并将文件移动到服务器并解压 tar zip 文件。
根据 Blogger 中的 post,一旦我打开项目,When R is started from that directory, Packrat will do its magic and make sure the software environment is the same as on the source machine.
但是,当我在服务器(使用 R-Studio Server 0.99)中打开项目时,什么也没有发生,它会抛出未知包错误。
当手动执行下面的 "packarat/init.R" 文件时会抛出错误
Error in ensurePackageSymlink(source, target) :
Target '/home/R_Projects/prjName/packrat/lib-R/base' already exists and is not a symlink
嗯,找到问题并解决了。 symlink 错误与 centOS 有关(与 R 无关)。我只是简单地删除了
中的所有文件夹/home/R_Projects/prjName/packrat/lib-R
因为这些文件夹存在,所以 packrat 无法在 lib-R 文件夹中创建同名的 symlink。如果我删除它们,它将创建一个 link(快捷方式)到 r 包所在的实际文件夹。
希望对以后的读者有所帮助。