在调试主Rscript

时间:2016-03-22 15:59:10

标签: r debugging rstudio breakpoints

我有一个主R脚本,它使用一个名为Multiply()的函数进行乘法。

debugSource("C:/Users/R_debug_breakpoint/myFunction.R")
a<-1
b<-2
mult<-Multiply(a,b)

我在另一个名为“myFunction.R”的R脚本中写了Multiply()

“myFunction.R”看起来像这样:

Multiply<-function(a,b){
  c<-a+b
  e<-a/b
  d<-a*b
  return(d)
}

如果我想在行中的Multiply()函数中设置断点: d&lt; -a * b并进入源模式以查看c的值,e。

但是,当我在main.R中按Source选项时,调试器不会在我在Muliply函数内设置的断点处停止。它只运行main.R中的所有代码。

我在许多网页中搜索此问题,最接近的是 How to set a breakpoint in function body in R-studio?

但是,我在这里使用debugSource但它仍然失败。

另一篇关于我发现有用的断点的博客是: https://support.rstudio.com/hc/en-us/articles/200534337-Breakpoint-Troubleshooting

它说:为了在采购期间遇到断点,您需要使用RStudio中包含的特殊调试源命令debugSource。如果您在文件上手动调用源,断点仍然有效,但在文件中的所有代码执行完毕后才会启用。

我认为这就是为什么它不起作用的原因,但它没有提及它的解决方法。

非常感谢你们的帮助。

0 个答案:

没有答案