无法单击NetBeans中的jslint错误

时间:2011-03-04 13:46:41

标签: javascript netbeans maven netbeans-6.9 jslint

我正在尝试配置NetBeans构建来调用jslint并产生错误,我可以单击该错误将我带到源代码。

使用来自Maven plugins to analyze javascript code quality的Maven构建脚本,jslint正在运行并产生错误但我无法点击它们。 NetBeans输出窗口中的文本如下所示:

[jslint] C:\Documents and Settings\arx\My Documents\Progs\jsweb\src\main\wwwroot\jsweb.js:125:48: 'keydown' is not defined.

我在Windows上运行NetBeans 6.9.1。路径中的空间不是问题。我用无空间的路径尝试了它,它仍然没有用。

最终我想在NetBeans中编辑一个简单的javascript + html项目,并且可以从jslint中获得可点击的错误。我不会和Maven结婚。感激地收到任何建议。

更新:解决方案

如果我将jslint4java直接放入Ant项目(而不是包含在Maven插件中的Ant项目),则输出不包含[jslint]前缀,我可以单击错误。

这是一件苦差事,因为似乎有必要明确列出所有jar文件依赖项的位置,但它可以工作。

另一次更新

我正在另外开始在Maven中完成这项工作,因为它的java依赖管理很好。问题肯定是输出中的[jslint]前缀,它由Ant生成。

似乎没有任何方法可以使NetBeans忽略前缀,这很奇怪,因为Ant是NetBeans的默认构建工具。

可以通过在Ant的DefaultLogger上设置emacsmode属性来抑制前缀。 NetBeans在推出Ant iself时会这样做(如果在Options中设置了“build.compiler.emacs = true”),但是maven-antrun-plugin没有(并且查看源代码,目前还没有任何方法可以说服它)。

可能的修复方法是:

  1. 使NetBeans更好地解码Ant输出。
  2. 向maven-antrun-plugin添加emacsmode选项。
  3. 查找本机Maven jslint插件(因此根本不使用Ant)。
  4. 选项3看起来可能是最简单的,所以我使用TortoiseSVN从http://mojo.codehaus.org/jslint-plugin/下载https://svn.codehaus.org/mojo/trunk/sandbox/jslint-plugin的源代码并使其正常工作。但它产生了NetBeans不友好的输出,如:

    [ERROR]jssvg.js:2690:48:'keydown' is not defined.
    

1 个答案:

答案 0 :(得分:1)

最简单的方法是添加this插件。支持Netbeans 7.3。