libGDX html 构建总是失败:compileGwtException

libGDX html build always fails: compileGwtException

我正在尝试构建一个 libGDX 应用程序并将 HTML 作为分发目标。

使用 JAR 安装应用程序的安装 运行 成功。我只勾选了 HTML 作为输出(为了这个问题)并且没有添加任何扩展。这些文件都保留为生成的。

但是每当我尝试构建它时,它都会失败:

[tobias@LapTobTob test]$ ./gradlew html:dist
:html:clean
:html:addSource
:core:compileJava UP-TO-DATE
:core:processResources NO-SOURCE
:core:classes UP-TO-DATE
:core:jar UP-TO-DATE
:html:compileJavawarning: [options] bootstrap class path not set in conjunction with -source 1.6
1 warning

:html:processResources NO-SOURCE
:html:compileGwtException in thread "main" java.lang.NoSuchMethodError: com.google.gwt.util.regexfilter.RegexFilter: method <init>()V not found
        at com.google.gwt.util.regexfilter.WhitelistRegexFilter.<init>(WhitelistRegexFilter.java:21)
        at com.google.gwt.dev.jjs.JJSOptionsImpl.<init>(JJSOptionsImpl.java:54)
        at com.google.gwt.dev.PrecompileTaskOptionsImpl.<init>(PrecompileTaskOptionsImpl.java:39)
        at com.google.gwt.dev.CompilerOptionsImpl.<init>(CompilerOptionsImpl.java:30)
        at com.google.gwt.dev.Compiler.main(Compiler.java:108)
 FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':html:compileGwt'.
> Process 'command '/usr/lib/jvm/java-8-openjdk/bin/java'' finished with non-zero exit value 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 2s
6 actionable tasks: 4 executed, 2 up-to-date

系统:

检查您的 html 项目的 build.gradle 文件 GWT 版本是否设置为 2.8.0。 1.9.9 依赖于 2.8.0,安装工具可能使用 2.8.2 创建了它,因为这是 1.9.10-SNAPSHOT 使用的。

您有一些 GWT jar 版本的混合 - the RegexFilter class was added in GWT 2.8.1,因此您构建的某些部分依赖于 2.8.1+,但显然您仍然有一些 2.8.1 之前的 jar 被引入你的构建。

此外,由于您在 Java 9 上 运行,因此您必须使用 GWT 2.8.2,因为 support to run on Java 9 was only added in 2.8.2

确保 GWT 构建运行时仅存在 GWT 2.8.2(检查项目的依赖项和 gwt 编译任务带来的内容),并且没有更早的版本。