【问题标题】:Error in CRAN package on Debian. Can view photo in Windows, not in DebianDebian 上的 CRAN 软件包错误。可以在 Windows 中查看照片,而不是在 Debian 中
【发布时间】:2018-11-05 05:18:16
【问题描述】:

我使用 RStudio 版本 1.1.453 在 Windows 10 机器上创建了一个 R 包

包可以在GitHub找到

当我运行check() 时,有个错误、警告、注释。

提交给 CRAN 后,我收到了 Debian 的错误,

> ShowPalettePhoto("GoldenTemple")
Error in readJPEG(x, native = TRUE) : 
  unable to open /srv/hornik/tmp/CRAN/RanglaPunjab.Rcheck/RanglaPunjab/img/goldentemple.jpg
Calls: ShowPalettePhoto -> readJPEG

以下是我如何实现显示照片的功能。

如何实现以便在 Debian(或任何操作系统)中查看?

请指点我正确的方向。

ShowPalettePhoto <- function(name){

  pal <- RanglaPunjab(name)
  if (is.null(pal))
    stop("palette not found.")
  x <- tolower(name)
  sysloc <- system.file(package="RanglaPunjab")
  x <- paste (sysloc,"/img/",x,".jpg", sep="")
  jj <- readJPEG(x,native=TRUE)
  graphics::plot(0:1,0:1,type="n",ann=FALSE,axes=FALSE)
  graphics::rasterImage(jj,0,0,1,1)
}

【问题讨论】:

  • Linux 文件系统区分大小写,而 Windows 则不。很可能您的图像文件中包含一些大写字母。
  • @RalfStubner 这就是我的想法。将扩展名更改为小写......
  • 是的,我认为成功了!

标签: r windows rstudio cran debian-based


【解决方案1】:

问题。即

  unable to open /srv/hornik/tmp/CRAN/RanglaPunjab.Rcheck/RanglaPunjab/img/goldentemple.jpg

是您硬编码了对远程计算机上不存在的文件的引用。它只存在于您的本地计算机上。

因此,您需要采取几种简单方法中的任何一种来解决此问题,例如通过互联网链接到照片或确保将金殿照片包含在您的包裹中,并提供任何人都可以访问的适当路径谁来安装它。

我刚刚浏览了您的 GitHub。您在 img 文件夹中有照片,但它可能是路径的第一部分没有为其他用户适当更新 (/srv/hornik/tmp/CRAN/RanglaPunjab.Rcheck/RanglaPunjab)。或者,正如您和另一位用户在 cmets 中讨论的那样,您的情况可能有误。

【讨论】:

  • 感谢您的快速回复。当然有助于考虑未来的软件包/版本。刚才我提交给 CRAN - 他们正在进行人工检查 ::fingers-crossed::
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多