我刚开始在 rstudio 中进行调试。一开始一切都按照描述的方式工作 here .
我使用后 browser()
,我无法回到这个状态,也就是说没有互动区,我可以在那里按hide traceback
或 return with debug
按钮。有谁知道,出了什么问题?
traceback()
有效,但该消息不再具有交互性。 options(error = function(){.rs.breakOnError(TRUE)})
从这里 https://support.rstudio.com/hc/en-us/community/posts/202296047-error-recovery将该值设置为 TRUE,但仍然没有出现交互式回溯。 RStudio 版本
platform x86_64-w64-mingw32
arch x86_64
os mingw32
system x86_64, mingw32
status
major 3
minor 2.2
year 2015
month 08
day 14
svn rev 69053
language R
version.string R version 3.2.2 (2015-08-14) nickname Fire Safety
如果您还需要所有内容,请告诉我
options()
设置。2018 年 11 月编辑 :运行一个有错误的脚本,交互式回溯处于事件状态。
getOption("error")
(function ()
{
.rs.recordTraceback(FALSE, 5, .rs.enqueueError)
})()
销毁交互式回溯(不知道,我做了什么):
getOption("error")
(function ()
{
.rs.recordTraceback(FALSE, 5, .rs.enqueueError)
})()
因此,设置是相同的,不清楚会发生什么......
最佳答案
我有同样的行为。以编程方式设置 error
后R 中的选项到 browser
, traceback
或 recover
,RStudio(调试/出错)中的按钮不再起作用。
为了解决这个问题,我必须首先重置 error
默认值的选项 NULL
.之后,我可以取回交互式调试器。
以下首先将选项重置为 NULL
然后将选项设置为在 RStudio 中选择(调试/出错/错误检查器)时获得的行为。
options(error = NULL)
options(error = function(){.rs.recordTraceback(TRUE)})
关于rstudio 的 traceback() 不再以交互方式工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36482607/