缩小 Maven 插件抛出 "JavaScript engine not supported" 错误

Minify Maven Plugin throwing "JavaScript engine not supported" error

如何配置 Minify Maven Plugin 插件以与 Maven 2.2.1 一起工作,同时还使用 Google Closure 编译器?

根据 this issue,版本 1.7.1 应该适用于该特定版本的 Maven,但在缩小时,它会抛出此警告:“[WARNING] JavaScript 不支持引擎”。捆绑的连接按预期工作。我正在从 1.2.4 版升级到使用 Closure 编译器。我需要 Closure Compiler,因为 YUI 在某些 ES2015 语法中有一些未解决的错误。我们暂时不会升级到 Maven 3。

工作站详细信息:

java version "1.8.0_60"
Apache Maven 2.2.1 (r801777; 2009-08-06 12:16:01-0700)
Java version: 1.8.0_60
OS name: "mac os x" version: "10.10.4" arch: "x86_64" Family: "mac"

我的配置:

<plugin>
        <groupId>com.samaxes.maven</groupId>
        <artifactId>minify-maven-plugin</artifactId>
        <version>1.7.1</version>

        <executions>
            <execution>
                <id>someBundle</id>
                <phase>process-classes</phase>
                <configuration>
                    <webappSourceDir>web/src/static${static.asset.basedir}</webappSourceDir>
                    <webappTargetDir>web/target/minify</webappTargetDir>
                    <jsSourceFiles>
                        <param>libs/somelib.js</param>
                        <param>libs/anotherlib.js</param>
                    </jsSourceFiles>
                    <jsFinalFile>bundle.js</jsFinalFile>
                    <jsEngine>CLOSURE</jsEngine>
                </configuration>
                <goals>
                    <goal>minify</goal>
                </goals>
            </execution>
        </executions>
</plugin>

这个问题很晦涩,所以我会通过发布我的解决方案来回答它。我担心升级到 Maven 3 会打开一堆蠕虫,但事实并非如此。事实上,它只是在更改 Maven 主目录的位置(在 IntelliJ 和 zsh 配置文件中 - M2_HOME)和我们的 Maven 存储库的位置(不在默认位置)之后工作。我同时使用 IntelliJ 和命令行进行构建,因此这两个位置都需要更新。

新的主目录位置(使用 Homebrew 安装):

/usr/local/Cellar/maven/3.3.3/libexec

在此文件中更新了本地 Maven 存储库设置:

/usr/local/Cellar/maven/3.3.3/libexec/conf/settings.xml

更新此值:

<localRepository>/path/to/local/maven/repository/</localRepository>