首页 > 解决方案 > R:调试和跟踪消息?

问题描述

虽然options(warn=2)会提示错误并因此启用调试,但我正在努力为消息做同样的事情。

例如,在我的代码库的某个地方,一个未知函数似乎使用了jsonlite-package,它触发了以下消息

所以我的问题是:有没有一种方便的方法来追溯消息的来源

注意:使用browser()似乎没有帮助,因为消息未在浏览器模式下显示。

标签: rdebuggingtraceback

解决方案


您可以使用将代码包装在调用中withCallingHandlers以将消息转换为错误:

withCallingHandlers(
  message("example message"),
  message = function(m) stop(m)
)
#Error in message("example message") : example message

推荐阅读