Mar*_*ski 6 r package-development
我正在使用pkgdown包为R包生成优雅和静态的手册页(称为RTCGA).当我运行代码以生成静态文档作为网站时,我使用以下命令
> pkgdown::build_site()
Initialising site -------------------------------------------------------------------------------------
Copying '/home/mkosinski/R/x86_64-pc-linux-gnu-library/3.3/pkgdown/assets/jquery.sticky-kit.min.js'
Copying '/home/mkosinski/R/x86_64-pc-linux-gnu-library/3.3/pkgdown/assets/link.svg'
Copying '/home/mkosinski/R/x86_64-pc-linux-gnu-library/3.3/pkgdown/assets/pkgdown.css'
Copying '/home/mkosinski/R/x86_64-pc-linux-gnu-library/3.3/pkgdown/assets/pkgdown.js'
Building home -----------------------------------------------------------------------------------------
Writing '/home/mkosinski/GitHub/RTCGA/docs/index.html'
Building function reference ---------------------------------------------------------------------------
Loading RTCGA
Welcome to the RTCGA (version: 1.5.1).
trying URL 'http://gdac.broadinstitute.org/runs/stddata__2015_11_01/data/ACC/20151101/gdac.broadinstitute.org_ACC.Merge_mirnaseq__illuminahiseq_mirnaseq__bcgsc_ca__Level_3__miR_gene_expression__data.Level_3.2015110100.0.0.tar.gz'
Content type 'unknown' length 309876 bytes (302 KB)
==================================================
downloaded 302 KB
Warning: Topics missing from index: RTCGA-package, theme_RTCGA
Building articles -------------------------------------------------------------------------------------
Building article 'RTCGA_Workflow.html'
Building article 'Web_Applications.html'
Run Code Online (Sandbox Code Playgroud)
此代码在RTCGA包项目的根目录中进行评估,并提供已加载RTCGA并创建文档的信息.
但我在大多数页面的文档中发现了一个错误 - 有一个错误告诉
错误:无法找到'RTCGA.rnaseq'所需的包'RTCGA'
所以没有一个例子可以运行.此外,当我library(RTCGA.rnaseq)使用后运行时,我build_site无法再加载依赖RTCGA包
> library(RTCGA)
> library(RTCGA.rnaseq)
Error: package ‘RTCGA’ required by ‘RTCGA.rnaseq’ could not be found
Run Code Online (Sandbox Code Playgroud)
当我library(RTCGA.rnaseq)在新会话中运行而没有调用pkgdown::build_site依赖RTCGA包正常加载而没有警告.
我怀疑这是由build_site执行的任何设置引起的,但我不知道如何解决它们以及如何使用pkgdown包构建适当的静态文档.
任何意见?
看来我找到了一个令人讨厌的解决方法。
RTCGA软件包示例中使用了8个数据包。每个数据包都需要加载RTCGA。pkgdown::build_site()奇怪的是, usesdevtools::load_all()仅从 RTCGA 加载对象,但不允许在示例运行期间加载此包。
我通过更改这些包元信息RTCGA来从数据包中删除,例如Depends
packages_to_remove_RTCGA_from_Depends <-
c("RTCGA.clinical",
"RTCGA.mutations",
"RTCGA.rnaseq",
"RTCGA.RPPA",
"RTCGA.mRNA",
"RTCGA.miRNASeq",
"RTCGA.methylation",
"RTCGA.CNV")
sapply(packages_to_remove_RTCGA_from_Depends, function(data_package){
Meta <- readRDS(file.path(.libPaths()[1], data_package, "Meta", "package.rds"))
Meta$Depends <- list()
saveRDS(Meta, file.path(.libPaths()[1], data_package, "Meta", "package.rds"))
})
Run Code Online (Sandbox Code Playgroud)