javascript缩小时出现stackoverflow错误

时间:2019-01-03 05:36:11

标签: javascript build compression minify yui-compressor

我正在研究一个Spring jsp项目,该项目包含页面上集成的用于客户端脚本的javascript文件。我在pom.xml

的build标签内使用了这个Maven插件
<plugin>
        <groupId>com.samaxes.maven</groupId>
        <artifactId>minify-maven-plugin</artifactId>
        <version>1.7.4</version>
        <executions>
            <execution>
                <id>min-js</id>
                <phase>prepare-package</phase>
                <goals>
                    <goal>minify</goal>
                </goals>
            </execution>
        </executions>
        <configuration>
            <charset>UTF-8</charset>
            <skipMerge>true</skipMerge>
            <cssSourceDir>resources/css/css</cssSourceDir>
            <jsSourceDir>resources/js</jsSourceDir>
            <jsEngine>CLOSURE</jsEngine>
            <closureLanguage>ECMASCRIPT5</closureLanguage>
            <closureAngularPass>true</closureAngularPass>
            <nosuffix>true</nosuffix><webappTargetDir>${project.build.directory}/minify</webappTargetDir>
            <cssSourceIncludes>
                <cssSourceInclude>**/*.css</cssSourceInclude>
            </cssSourceIncludes>
            <cssSourceExcludes>
                <cssSourceExclude>**/*.min.css</cssSourceExclude>
            </cssSourceExcludes>
            <jsSourceIncludes>
                <jsSourceInclude>**/*.js</jsSourceInclude>
            </jsSourceIncludes>
            <jsSourceExcludes>
                <jsSourceExclude>**/*.min.js</jsSourceExclude>
            </jsSourceExcludes>
        </configuration>            </plugin>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-war-plugin</artifactId>
        <version>2.4</version>
        <configuration>
            <webResources>
                <resource>
                    <directory>${project.build.directory}/minify</directory>
                </resource>
            </webResources>
        </configuration>
    </plugin> 

当我最后开始构建流程时,我收到java.lang.StackOverflowError错误。使用yuicompressor

1 个答案:

答案 0 :(得分:0)

在“启动CSS任务”和“启动JavaScript任务”之后,请仔细检查minify插件的输出,以获取意外的文件名。

未能从缩小中排除某些文件会导致此错误。例如:当我的CSS缩小意外包括js文件时,我遇到了这个问题,反之亦然。在链接的here问题中,意外包含一个.map文件。已经缩小的文件也可能导致此问题。