Maven插件来分析javascript代码质量

Maven插件来分析javascript代码质量

Maven plugins to analyze javascript code quality

JavaScript代码很难维护。
我正在寻找可以帮助我确保合理质量水平的工具。
到目前为止,我已经找到了JsUNit,这是一个非常好的javascript单元测试框架。 可以在任何可用的浏览器上从ant自动运行测试。
我还没有找到与PMD,checkstyle,Findbug等JavaScript相当的JavaScript ...

您知道JavaScript的任何静态代码分析工具吗?


这是一个旧线程,但是如果您对在maven项目中运行Jasmine进行BDD测试感兴趣,我正是出于这个目的编写了这个jasmine-maven-plugin(即通过鼓励TDD来提高JS质量)。

http://github.com/searls/jasmine-maven-plugin


我已经使用以下代码在Maven的COMPILE阶段中运行JSLint。

它从maven存储库下载jslint4java,因此您不需要其他任何东西。

如果JSLint在javascript文件中发现问题,则构建将失败。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            maven-antrun-plugin</artifactId>
            <version>1.6</version>
            <executions>
                <execution>
                    <phase>compile</phase>
                    <goals>
                        <goal>run</goal>
                    </goals>
                    <configuration>
                        <target>
                            <taskdef name="jslint" classname="com.googlecode.jslint4java.ant.JSLintTask" classpath="${settings.localRepository}/com/googlecode/jslint4java/jslint4java-ant/1.4.2/jslint4java-ant-1.4.2.jar" />
                            <jslint options="white,browser,devel,undef,eqeqeq,plusplus,bitwise,regexp,strict,newcap,immed">
                                [cc lang="javascript"]Ext,Utils</predef>
                                <formatter type="plain" />
                                <fileset dir="${basedir}/src/main/resources/META-INF/resources/js" includes="**/*.js" />
                            </jslint>
                        </target>
                    </configuration>
                </execution>
            </executions>
            <dependencies>
                <dependency>
                    <groupId>com.googlecode.jslint4java</groupId>
                    jslint4java-ant</artifactId>
                    <version>1.4.2</version>
                </dependency>
            </dependencies>
        </plugin>


Wro4j-maven-plugin还为JavaScript和CSS资源的静态代码分析提供了多个目标,例如:jslint,jshint和csslint

这是官方Wro4j-maven-plugin文档的链接。


我在Codehaus提交的一些插件可能也很有趣:

http://mojo.codehaus.org/js-import-maven-plugin/

http://mojo.codehaus.org/jslint-maven-plugin/

第一个将Maven依赖关系管理引入JavaScript。第二个允许快速有效地调用JSLint。


jslint4java已经被提及过几次了,我不记得他们添加了哪个版本,但是实际上有一个内置的Maven任务。

传统上,在jslint4java和Maven中,人们使用antrun插件来运行jslint4java ant任务,但是现在您可以在Maven中对其进行配置,从而避免了额外的步骤。

http://docs.jslint4java.googlecode.com/git/2.0.2/maven.html


该项目看起来很接近:

http://dev.abiss.gr/mvn-jstools/index.html

它使用JsLint生成报告。它看起来好像并没有进入构建生命周期的测试阶段,所以我认为,如果jslint发现问题(我想在我的项目中这样做),它将不会拒绝构建。


一个针对" jslint ant任务"的快速Google展示了jslint4java,它显然包括一个Ant任务。


新的jslint-maven-plugin看起来很有用。它包装jslint4java,并在构建的测试阶段执行JSLint。


我从事过SweetDEV RIA项目,该项目是一个Java标记库,由几个" Web 2.0 / Ajax / JavaScript"组件组成。

Maven 2的构建过程包括一些内部插件,这些插件可启动JSLint(代码验证器),JsMin(代码缩小器),JsDoc生成(类似于JavaDoc的文档),JsUnit(单元测试)和Selenium(在浏览器中)测试。

您可以看一下SweetDEV RIA maven插件存储库。


声纳和JavaScript插件:http://docs.codehaus.org/display/SONAR/JavaScript+Plugin


推荐阅读

    linux命令补全工具?

    linux命令补全工具?,工具,系统,软件,地址,命令,名称,智能,环境,信息,终端,简

    linux系统命令行工具?

    linux系统命令行工具?,工具,系统,工作,状态,命令,地方,标准,信息,环境,基础,L

    linux系统维护命令?

    linux系统维护命令?,系统,工作,信息,策略,发展,网络,时间,情况,工具,服务,系

    linux命令下载工具?

    linux命令下载工具?,工具,网络,代理,代码,简介,位置,系统,第一,下载工具,文

    linux好用的命令工具?

    linux好用的命令工具?,系统,管理,工具,基础,服务,信息,工作,发行,公司,代码,L

    linux常用命令行工具?

    linux常用命令行工具?,系统,工作,工具,地址,管理,信息,命令,软件,目录,基础,l

    linux命令行专业工具?

    linux命令行专业工具?,工具,系统,工作,信息,服务,环境,基础,命令,管理,发行,l

    linux命令行执行工具?

    linux命令行执行工具?,工具,系统,网络,分析,工作,服务,状态,信息,电脑,发行,s

    linux命令行执行工具?

    linux命令行执行工具?,工具,系统,网络,分析,工作,服务,状态,信息,电脑,发行,s

    开发linux命令工具?

    开发linux命令工具?,系统,工具,环境,状态,平台,设计,数据,电脑,中小企业,标

    linux命令行工具大全?

    linux命令行工具大全?,工作,系统,工具,地址,信息,命令,目录,基础,管理,文件,l

    linux常用的维护命令?

    linux常用的维护命令?,系统,网络,管理,工作,标准,工具,地址,数据,命令,信息,l

    linux命令联想工具?

    linux命令联想工具?,地址,工作,系统,工具,状态,标准,信息,命令,目录,左下角,L

    linux命令工具怎么用?

    linux命令工具怎么用?,地址,系统,工作,单位,工具,密码,服务,命令,处分,基础,

    linux命令行截图工具?

    linux命令行截图工具?,工具,电脑,软件,系统,截图,网站,工作,环境,暂停,命令,L

    linux命令工具教程?

    linux命令工具教程?,系统,工具,信息,基础,基础知识,代码,在线,地址,项目,服

    linux命令行渗透工具?

    linux命令行渗透工具?,系统,发行,网络,工具,信息,地址,管理,数据,工程,中国,

    linux卸载工具命令?

    linux卸载工具命令?,软件,系统,工具,名称,电脑,信息,命令,终端,程序,提示符,l

    linux维护网络命令?

    linux维护网络命令?,网络,地址,系统,工具,信息,服务,电脑,初级,设备,命令,lin

    linux命令流程图工具?

    linux命令流程图工具?,软件,工具,在线,网站,电脑,流程图,网络,名称,系统,首