Экспорт HTML GWT из LibGdx показывает: GwtApplication: исключение: (TypeError) - PullRequest
0 голосов
/ 10 декабря 2018

У меня есть Android-игра, разработанная с версией LibGdx 1.9.9, которую я пытаюсь экспортировать в HTML.Я использую GWT (V-2.8.2).Игра хорошо работает на Android и не имеет никаких проблем.При экспорте игры с помощью этой команды ./gradlew html:dist я не получаю никаких ошибок.

Но когда я помещаю экспортированную библиотеку на локальный хост и пытаюсь получить доступ к игре, сначала появляется загрузчик по умолчанию, а затемс этим сообщением об ошибке есть пустой экран:

GwtApplication: exception: (TypeError) : null is not an object (evaluating 'null.zY') (TypeError) : null is not an object (evaluating 'null.zY')

Это происходит в каждом браузере - Safari, Chrome, Firefox.

Трассировка стека не выполняетсяпоказать какое-либо существенное место отладки.

Есть идеи, в чем проблема?Спасибо.

HTML Gradle:

gwt {
    gwtVersion='2.8.0' // Should match the gwt version used for building the gwt backend
    maxHeapSize="2G" // Default 256m is not enough for gwt compiler. GWT is HUNGRY
    minHeapSize="1G"

    src = files(file("src/")) // Needs to be in front of "modules" below.
    modules 'com.package.gamename.GdxDefinition'
    devModules 'com.package.gamename.GdxDefinitionSuperdev'
    project.webAppDirName = 'webapp'

    compiler {
        strict = true;
        disableCastChecking = true;
    }
}

import org.wisepersist.gradle.plugins.gwt.GwtSuperDev

def HttpFileServer server = null
def httpFilePort = 8080

task startHttpServer () {
    dependsOn draftCompileGwt

    String output = project.buildDir.path + "/gwt/draftOut"

    doLast {
        copy {
            from "webapp"
            into output
        }

        copy {
            from "war"
            into output
        }

        server = new SimpleHttpFileServerFactory().start(new File(output), httpFilePort)

        println "Server started in directory " + server.getContentRoot() + ", http://localhost:" + server.getPort()
    }
}

task superDev (type: GwtSuperDev) {
    dependsOn startHttpServer
    doFirst {
        gwt.modules = gwt.devModules
    }
}


task dist(dependsOn: [clean, compileGwt]) {
    doLast {
        file("build/dist").mkdirs()
        copy {
            from "build/gwt/out"
            into "build/dist"
        }
        copy {
            from "webapp"
            into "build/dist"
            }
        copy {
            from "war"
            into "build/dist"
        }
    }
}

task addSource {
    doLast {
        sourceSets.main.compileClasspath += files(project(':core').sourceSets.main.allJava.srcDirs)
    }
}

tasks.compileGwt.dependsOn(addSource)
tasks.draftCompileGwt.dependsOn(addSource)

sourceCompatibility = 1.6
sourceSets.main.java.srcDirs = [ "src/" ]


eclipse.project {
    name = appName + "-html"
}

Error Here is the error screenshot

1 Ответ

0 голосов
/ 10 декабря 2018

Войдите в режим superdev и активируйте сопоставление и отладку исходного кода, а также пошагово просматривайте источник в Chrome, вот способ найти эти проблемы.

  • Начните с параметра superdev
  • Откройтевеб-страница игры
  • Нажмите кнопку со стрелкой в ​​верхнем левом углу
  • Нажмите кнопку «Скомпилировать»
  • Исходные карты теперь доступны в Chrome, вы получаете «настоящий»трассировка стека.
...