5

不久前我写了一篇关于在 eclipse 中使用 lint的博客,现在我想最终让错误解析工作,以便我可以单击 lint info/warning/error 行并让它跳转到代码中的那个位置。似乎有几种标准方法,但我无法让它们起作用。我愿意接受以下问题之一的一般答案或具体答案。

  1. 使用 makefile 而不是外部工具。我使用了托管构建,但我已经接近了,现在在我的托管构建中,我有一个尝试运行 lint 而不是构建的配置。唯一的问题是 Eclipse 中的某些东西不断在命令中添加“-k”选项,这会导致 lint 失败。有谁知道如何阻止 Eclipse 添加该 -k 选项?(如果我删除它,它就会回来)。显示 -k 选项的屏幕截图

  2. 另一种方法是将输出解析到控制台窗口。我发现一个名为 ErrorLink 的插件看起来很完美。不幸的是,要么我无法构造符合要求的正则表达式,要么我没有配置工具以正确运行 lint。相当稀疏的方向说将您的 exe 添加到 .xml 文件中。我找到了xml文件并添加了

    <consoleLineTracker class="net.sourceforge.sunshade.errorlink.RegexpLineTracker" processType="lint-nt" id="regexpLineTracker"> </consoleLineTracker>

然后我尝试了一个简单的正则表达式,例如 (SomeFileName`.cpp),我确保 SomeFileName.cpp 出现在结果中,但没有生成链接。我不知道 ErrorLink 插件是否真的运行了,但我猜它没有运行。那么有人用过这个插件吗?关于如何让它与 lint 一起工作的任何提示?

4

1 回答 1

5
  1. 转到“行为”选项卡,取消选中“清理”,在此处添加您的 lint 选项(为我解决了这个问题)

  2. 转到:
    菜单栏:窗口 | 首选项
    导航树:C/C++ | 构建
    选择选项卡:“错误解析器”

    单击解析器列表右侧的“添加”,并将其命名为“my Funky PCLint RegEX”并选择它

    点击下方“错误解析器选项”框中的“添加”

例如一个不完美的列表

  • 严重性:信息
  • 模式: (. ) ([0-9] ): 错误 -> 信息 (.*)
  • 文件:1美元
  • 线路:2美元
  • 描述:3美元

和 - 严重性:警告 - 模式:(. ) ([0-9] ):错误 -> 警告 (.*) - 文件:$1 - 行:$2 - 描述:$3

警告和信息几乎相同。欢迎任何调整正则表达式的人。

于 2011-05-02T14:04:38.993 回答