当前位置: 首页 > 面试题库 >

Eclipse控制台:检测警告和错误模式并使它们可单击

马奇略
2023-03-14
问题内容

我正在eclipse中从ant的内部运行ant的flex编译器(mxmlc)(它们也打算在我们的持续集成服务器上运行,这就是为什么我不使用flex builder本身进行构建的原因)-模式eclipse-console无法识别mxmlc的内容,因此无法单击它们。

模式是这样的:

<文件的绝对路径>(<行号>):col:<列号>警告:<消息>

提出检测这些消息的正则表达式并不难。

如何让日食识别新的错误消息?我是否需要编写自己的扩展程序,还是可以在常规配置中添加正则表达式来获得一些常规支持?

我还可以尝试使ant将错误转换为类似于Java错误的内容,但我希望eclipse能够识别mxmlc错误。


问题答案:

编辑: 我发现了一个插件,可以使外观更加美观:Sunshade Errorlink(向下滚动一点)。我不确定这到底有多灵活,但它提到了蚂蚁的支持。

我知道您可能想要一个实际的实现,但这是您想要的插件设计的一个粗略起点。如果有人想实现它,请在此处添加指向它的链接。如果我有空闲时间,我可能会自己做(哈!):)

该规范假设控制台基于TextConsole,这似乎是合理的,它说:

支持正则表达式匹配和超链接的抽象文本控制台。

模式匹配侦听器可以通过控制台或通过org.eclipse.ui.console.consolePatternMatchListeners 扩展点进行注册。

我做了一些查找,该扩展点的规范具有以下示例:

<extension point="org.eclipse.ui.console.consolePatternMatchListener">
  <consolePatternMatchListener
    class="com.example.ExampleConsolePatternMatcher"
    id="com.example.ExampleConsolePatternMatcher"
    regex=".*foo.*">
    <enablement>
      <test 
        property="org.eclipse.ui.console.consoleTypeTest"
        value="exampleConsole"/>
    </enablement>
  </consolePatternMatchListener>
</extension>

您将需要IPatternMatchListenerDelegate的API,然后应该能够使用TextConsole.addHyperlink创建所需的链接。



 类似资料:
  • 为什么控制台会疯狂打印,抛出这个警告?

  • 如果提到经常被开发者忽略的特性,那应该就是动态输出错误和提醒的功能了。事实上,Sass 自带三条自定义指令从标准输出系统(CLI,编译程序……)中打印内容: @debug; @warn; @error. 先让我们把 @debug 放一边,毕竟它主要是用作调试 SassScript,而这并不是我们的重点。然后我们就剩下了相互间没有明显差异的 @warn 和 @error,唯一的不同是其中一个可以中断

  • 主要内容:交互模式,批处理模式,启用EchoOrientDB控制台是针对OrientDB数据库和服务器实例的Java应用程序。 OrientDB支持几种控制台模式。 交互模式 这是默认模式。 只需通过执行以下脚本(或MS Windows系统中的)来启动控制台。 确保有执行权限。 完成后,控制台已准备好接受命令。 批处理模式 要以批处理模式执行命令,请运行以下(或MS Windows系统中的)脚本,以便以分号分隔所有命令。 或者调用控制台脚本

  • 当我在gvm中进入grails控制台时,控制台加载时出现了几个错误。我看了其他答案,但没有提到grails和groovy的最新版本。 我运行的是LinuxMint17.1,拥有Grails3.0.3版、groovy 2.4.3版和JVM 1.8.045版。 此外,以下是加载的一些错误: 线程“thread-14”groovy中出现异常。lang.MissingPropertyException:没

  • 问题内容: 我正在处理将JobName列定义为UNIQUE的MySQL表。如果有人尝试使用数据库中已有的JobName将新Job保存到数据库中,则MySQL会发出警告。 我希望能够在我的PHP脚本中检测到此警告(就像错误一样)并适当地对其进行处理。理想情况下,我想知道MySQL发出了什么样的警告,以便我可以分支代码来处理它。 这可能吗?如果不是,是否是因为MySQL不具备此功能,PHP不具备此功能

  • 我刚刚更新了我的React-Native应用程序,当我试图制作另一个内测版时,在谷歌游戏控制台收到了这条错误消息。 未知验证VALIDATE_APP_MESSAGE_NO_APKS 最新的版本上传没有问题,这个版本只有很少的变化。毫无疑问。很抱歉提供这么少的信息。 有人在Google Play Console上上传最新更新的应用程序时遇到过这个错误消息吗?