RStudio为每个函数错误进入调试模式-如何停止它?

RStudio为每个函数错误进入调试模式-如何停止它?,r,debugging,rstudio,R,Debugging,Rstudio,我已经使用RStudio多年了,这在我身上从未发生过。出于某种原因,每次函数抛出错误时,RStudio都会进入调试模式(我不希望它这样做)。即使在对单个函数使用undebug()之后 > undebug(http.get) Warning message: In undebug(fun) : argument is not being debugged > x = http.get(country = 'KE') http --timeout=60 get "http://foo@

我已经使用RStudio多年了,这在我身上从未发生过。出于某种原因,每次函数抛出错误时,RStudio都会进入调试模式(我不希望它这样做)。即使在对单个函数使用undebug()之后

> undebug(http.get)
Warning message:
In undebug(fun) : argument is not being debugged
> x = http.get(country = 'KE')

http --timeout=60 get "http://foo@bar.com/observation?country=KE" > freshobs.json </dev/null
Error in fromJSON(file = "freshobs.json") : unexpected character 'O'

Error in el[["product_name"]] : subscript out of bounds
Called from: grepl(el[["product_name"]], pattern = "json:", fixed = T)
Browse[1]> Q
取消bug(http.get) 警告信息: 在undebug(乐趣)中:未调试参数 >x=http.get(国家='KE') http--超时=60获取“http://foo@bar.com/observation?country=KE“>freshobs.json Q 我使用的任何中断的函数都会导致调试模式启动,这非常烦人,因为它会打开一个源代码查看器,让您远离代码。有人知道如何停止这个功能吗? 当“首选项”中的“仅当我的代码包含错误时使用调试模式”复选框处于选中状态且未选中时,会发生这种情况


谢谢

嗯,我想我已经把它修好了。不知道这是怎么发生的,但在Rstudio,运行

> options()$error # returned:
 (function () 
{
    .rs.breakOnError(FALSE)
})()
其中,当从终端运行R时,as在同一事物中返回NULL。-->我跑:

options(error=NULL)

这解决了问题,但只是暂时的。当我退出并重新启动Rstudio时,代码需要再次运行。当我找到更改默认值的方法时将更新。。。干杯。

我试图通过将
选项(error=NULL)
放入我的
.Rprofile
中来解决此问题,但这不起作用

我的工作是去看电影。这实际上与设置
选项(error=NULL)
相同,但它在重新启动时是持久的

我和这个问题消失了

请注意,此重置后的
options()$error
返回值为:

(function () 
{
    .rs.recordTraceback(TRUE, 5, .rs.enqueueError)
})()

此更改之前的值为per

对我来说没有任何效果:我有一个函数,当我运行时,它会继续调试


对我来说,解决方案是(请谨慎):
Debug(menu)->清除所有断点…

我在RStudio Cloud中遇到了同样的问题。通过选择不同版本的R解决了这个问题。 我使用的是R3.6.0,并将其更改为R3.5.3(右上角的选项)。它刷新了控制台,调试停止。然后R3.6.0又好了。
干杯。

我不认为这是rstudio的默认设置,至少对我来说不是。你的档案里有什么东西吗?我也不认为它是默认的(因为这个问题现在才出现)-不知怎么的,它被改变了。你可以定义
选项(error=stop)
<代码>选项(error=recover)也很有用。在macOSI上的RStudio(v1.0.12)中,这显然是我的默认设置。我认为在运行
.Rmd
文件中有错误的代码块后,这种情况会发生在我身上。单击
traceback
更改
getOption(“错误”)
。然后我的会话崩溃了一些C++代码。我正在运行Rstudio版本为1.1.383的Windows。运行
options(error=NULL)
并关闭会话为我解决了这个问题。