jslint-maven-plugin不读取jsSourceFolder并仍然读取默认值

时间:2013-02-21 16:13:17

标签: java maven maven-plugin jslint

我正在尝试使用jslint maven插件。我把它包含在我的pom文件中

<plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>jslint-maven-plugin</artifactId>
            <version>1.0.1</version>
            <executions>
                <execution>
                    <id>execute-jslint</id>
                    <goals>
                        <goal>jslint</goal>
                        <goal>test-jslint</goal>
                    </goals>
                    <configuration>
                        <sourceJsFolder>
                            <file>${basedir}/src/main/webapp/static/js/</file>  
                        </sourceJsFolder>
                    </configuration>
                </execution>
            </executions>
        </plugin>

但是当我运行此命令maven jslint:jslint时,我收到此错误


[ERROR] Failed to execute goal org.codehaus.mojo:jslint-maven-plugin:1.0.1:jslint (default-cli) on project webshop-core: Execution default-cli of goal org.codehaus.mojo:jslint-maven-plugin:1.0.1:jslint failed: basedir /home/mymac/project1/src/main/js does not exist -> [Help 1]

根据此链接http://mojo.codehaus.org/jslint-maven-plugin/jslint-mojo.html#sourceJsFolder的参数,它仍会从默认值中读取。

1 个答案:

答案 0 :(得分:2)

这里有两个问题。首先,您不需要文件标记,因为maven知道您传递给sourceJsFolder的字符串是路径。其次,当您调用mvn jslint:jslint时,您正在使用的执行是default-cli,但您没有为此执行指定sourceJsFolder变量。你有两个选择;你可以在执行之外移动sourceJsFolder配置选项,如下所示:

<plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>jslint-maven-plugin</artifactId>
        <version>1.0.1</version>
        <configuration>
            <sourceJsFolder>${basedir}/src/main/webapp/static/js</sourceJsFolder>
        </configuration>
        <executions>
            <execution>
        ...

或者您也可以指定default-cli执行的配置:

<plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>jslint-maven-plugin</artifactId>
        <version>1.0.1</version>
        <executions>
            <execution>
                <id>default-cli</id>
                <configuration>
                    <sourceJsFolder>${basedir}/src/main/webapp/static/js</sourceJsFolder>
                </configuration>
                ...