2

我最近在 RStudio 中调试包代码时遇到了一个问题。假设我在源文件中有一个函数,比如说foo.R,并在该函数的主体中设置一个断点。然后,当我在控制台中运行到达该断点的某些东西时,代码面板中会显示第二个副本foo.R,并且它会弹出到前台。我设置断点的行在新视图中突出显示,但红点出现在第一个副本中。这让我发疯,因为它发生在每个源文件中,并且使我的代码窗口变得一团糟。

此外,如果我在文件的第一个副本中进行了更改,重新构建,并且不关闭调试副本,那么如果我仍然有活动的断点,则这些更改不会显示在调试副本中。这非常令人困惑。

这是我进入通话看到的图示。文件的第一个版本有红点;您可以看到第二个副本的选项卡:

代码窗口 1

该文件的第二个副本是显示调试的位置:

代码窗口 2

这就是我在控制台中输入的内容:

控制台命令

我的想法是,这可能与它立即从Browse[1]Browse[2]。但是,我试过debuggingState(on = FALSE)了,但这并没有什么不同。

这不是我能够重现的错误。如果我切换到不同的项目,这不会发生。这显然是我项目中的一些设置搞砸了。

4

1 回答 1

0

我想通了。我的设置将驱动器号映射H:到我视为主目录的路径。这意味着该映射目录中的任何文件都有两个不同版本的文件路径。重复文件是在其路径的其他版本中创建的。我从它想要使用的路径重新加载了项目,这解决了问题!

于 2020-07-31T21:36:04.813 回答