我有一个特殊的JavaScript maven插件,用于验证/压缩来自/ src / main / javascript的JavaScript源代码并将其存储到/ target / scripts中。在带有m2e 0.x的Eclipse 3.6中,这非常有效,因为这个插件是在进程资源阶段执行的。因此,每次我在Eclipse中保存文件时,项目都会被编译。当验证器发现问题时,此问题将作为错误记录到maven控制台。
现在使用Eclispe 3.7和新的m2e 1.x这不再有效,因为需要一个特殊的连接器来处理这个插件。也可以配置生命周期映射,以便简单地执行此插件。但是当我这样做时,我再也没有记录消息了。当发现Javascript错误时,我只在POM中获得错误标记。这不是很有用。所以我正在尝试编写一个执行maven插件的m2e插件,然后在Eclipse中很好地显示错误。但是当涉及到eclipse插件编程时,我总是一个菜鸟。我的参与者目前看起来像这样:
public class Participant extends MojoExecutionBuildParticipant
{
public Participant(final MojoExecution execution)
{
super(execution, true);
}
@Override
public Set<IProject> build(final int kind, final IProgressMonitor monitor)
throws Exception
{
final Set<IProject> result = super.build(kind, monitor);
return result;
}
}
正确调用构建方法,并且maven插件也正确执行。但是通过这种简单的方法,我甚至在插件失败时也没有得到任何错误标记。那么我现在如何挂钩到maven执行来拦截构建错误以及如何在Eclipse中显示它们呢?只要错误日志消息再次显示在maven控制台中就足够了,但是当我可以创建指向真实文件位置的真实错误标记(我可以从maven插件日志记录中解析)时,它会更加冷却。 p>