昨天,我们迁移到了公司的Windows 7,并更新了Java包和R(至2.14)。

然后,我尝试加载xlsx软件包,因为我严重依赖它,但出现以下错误:

Error : .onAttach in attachNamespace()
Error: .jnew("org/apache/poi/xssf/usermodel/XSSFWorkbook")

我尝试了以下操作,但没有成功:
Sys.setenv(PATH=paste(Sys.getenv("PATH"),"C:\\Program Files (x86)\\Java\\jre6\\bin\\client",collapse=';'))
options(java.parameters = "-Xmx1000m")

由于我从不使用Java,所以我不知道该怎么办。你能帮助我吗?

谢谢!

sessionInfo()
R版本2.14.1(2011-12-22)
平台:i386-pc-mingw32 / i386(32位)

地区:
[1] LC_COLLATE =德语_奥地利.1252 LC_CTYPE =德语_奥地利.1252
[3] LC_MONETARY =德语_奥地利。1252LC_NUMERIC = C
[5] LC_TIME =德语_奥地利。1252

附加基本软件包:
[1]统计图形grDevices utils数据集方法库

其他附件包:
[1] xlsxjars_0.4.0 rJava_0.9-3

通过名称空间(未附加)加载:
[1] tools_2.14.1 xlsx_0.4.2


有趣的是,该软件包XLConnect可以毫无问题地加载。
Error: NoSuchMethodError (Java): org.apache.xmlbeans.XmlOptions.setSaveAggressiveNamespaces()Lorg/apache/xmlbeans/XmlOptions;

因此,也许这真的不是Java问题。但是我不想将我的所有代码都重写为XLConnect!

没人知道我可以尝试什么吗?

最佳答案

我遇到了完全相同的错误,并找到了解决方法。如果您在网络上指定要安装软件包的库位置,则会发生错误。

## Example where error occurs:
install.packages('xlsx', lib='\\network\R\library')
library('xlsx', lib='\\network\R\library'))

但是,如果您在R中更改了软件包安装的默认位置,那么您应该能够调用软件包库而不会出现错误。也就是说,只需键入install.packages('xlsx'),并将软件包自动安装到其默认位置,即可使软件包正常工作。

09-26 09:18