[options(warn=2)
将提示错误并因此启用调试,而我正努力为消息做同样的事情。
例如,在我的代码库中的某个地方,一个未知函数似乎使用jsonlite
-package,这会触发following message。
所以我的问题是:是否有一种方便的方法可以追溯消息的来源?
注意:使用browser()
似乎无济于事,因为在浏览器模式下不会显示消息。
您可以在调用withCallingHandlers
的过程中使用自动换行以将消息转换为错误:
withCallingHandlers(
message("example message"),
message = function(m) stop(m)
)
#Error in message("example message") : example message