java - rJava 库可以作为本地的包依赖项,但不能来自 Git 存储库
问题描述
我有一个使用“xlsx”作为依赖项的包,如果我从本地文件执行此操作,该包可以很好地安装库。library(packagename)
工作正常,所以library(xlsx)
和library(rJava)
. 我们刚刚开始实施一些急需的版本控制,但是,当尝试从 git 存储库安装相同的包时,我收到以下错误:
devtools::install_git(path)
...
** building package indices
** testing if installed package can be loaded
*** arch - i386
Error: package or namespace load failed for 'xlsx':
.onLoad failed in loadNamespace() for 'rJava', details:
call: fun(libname, pkgname)
error: No CurrentVersion entry in Software/JavaSoft registry! Try re-installing Java and make sure R and Java have matching architectures.
Error : package 'xlsx' could not be loaded
Error: loading failed
Execution halted
*** arch - x64
ERROR: loading failed for 'i386'
我也试过rJava
在之前列出的下面Depends:
,得到了同样的错误。DESCRIPTION
xlsx
似乎其他人在加载 rJava 时遇到了同样的错误,所以我尝试了其中的一些建议(尝试在 R 中加载包时出现问题,因为 rJava)。
系统信息:
> Sys.info()[c("sysname", "release", "version", "machine")]
sysname release version machine
"Windows" "Server >= 2012 x64" "build 9200" "x86-64"
我已经检查过了,我肯定使用的是 64 位 R
R version 3.5.1 (2018-07-02) -- "Feather Spray"
Copyright (C) 2018 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64 (64-bit)
Java 版本似乎也是 64 位的。
> system("java -version")
java version "1.8.0_151"
Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)
我还检查了“JAVA_HOME”
> Sys.getenv("JAVA_HOME")
[1] ""
> Sys.getenv("JAVA")
[1] ""
我不确定为什么该软件包在本地版本的软件包中作为依赖项可以正常工作,但在从存储库安装时却不行。我知道我们可以在我们所有的脚本中添加一个库(xlsx)来强制解决这个问题,但是很高兴了解是什么导致了这个问题。
解决方案
推荐阅读
- java - 如何对列表中两个不同类的字段进行排序?
- java - 如何在 java 命名查询中编写区分大小写的查询
- sql - 当我在 sqlite3 中使用 SUM(CASE WHEN .... THEN "column_name") 时,我得到了意想不到的结果
- ios - 如何更改 iPhone 部署目标
- reactjs - 基于角色的授权的正确位置
- azure-devops - Jira 与 AzureDevOps 板
- php - Laravel 6 用户登录时记住我的令牌错误
- python - 网页抓取:使用 bs4 抓取数据时获取“\n”标签
- c# - 如何实现一个类来决定是好还是坏请求
- laravel - 为什么 Laravel 急切加载不适用于对象函数?