czyzby/gdx-lml

Autumn as used in Liftoff not working due to incorrect include 1.9.1.9.6

theresajayne opened this issue · 5 comments

Trying to run Using Autumn 1.9.1.9.6
Getting an Error on trying to run my app.
Caused by: java.lang.NoClassDefFoundError: com/badlogic/gdx/utils/IdentityMap$Entry

Investigating deeper it appears that the Class mentioned there is not used, there is a Class Entries now.
Which contains Entry from ObjectMap
ContextInitializer.java lines 8, 359-375

Exception in thread "main" com.badlogic.gdx.utils.GdxRuntimeException: java.lang.NoClassDefFoundError: com/badlogic/gdx/utils/IdentityMap$Entry
	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:117)
	at com.gitlab.theresajayne.tranquility.lwjgl3.Lwjgl3Launcher.createApplication(Lwjgl3Launcher.java:17)
	at com.gitlab.theresajayne.tranquility.lwjgl3.Lwjgl3Launcher.main(Lwjgl3Launcher.java:12)
Caused by: java.lang.NoClassDefFoundError: com/badlogic/gdx/utils/IdentityMap$Entry
	at com.github.czyzby.autumn.context.ContextInitializer.initiateMetaComponents(ContextInitializer.java:359)
	at com.github.czyzby.autumn.context.ContextInitializer.initiate(ContextInitializer.java:291)
	at com.github.czyzby.autumn.mvc.application.AutumnApplication.initiateContext(AutumnApplication.java:78)
	at com.github.czyzby.autumn.mvc.application.AutumnApplication.create(AutumnApplication.java:65)
	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.initializeListener(Lwjgl3Window.java:429)
	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.update(Lwjgl3Window.java:377)
	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:137)
	at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:111)
	... 2 more
Caused by: java.lang.ClassNotFoundException: com.badlogic.gdx.utils.IdentityMap$Entry
	at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)
	at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
	... 10 more

It's possible that the latest released Autumn version is out of sync with the latest LibGDX, hence the ClassNotFoundExceptions. You can either downgrade to LibGDX 1.9.6 or move to snapshot releases of the Autumn library (1.9.1.9.10-SNAPSHOT).

I'm working on this now; last I checked the snapshot repo was down for some reason, so I'm using jitpack.io to attempt to handle the dependencies. Unfortunately, the build is failing on gdx-autumn's natives, which seem to have their own dependency mismatch issues inside gdx-lml. This build failure causes the JAR for autumn to be empty except for a META-INF folder. I'm probably going to just copy large parts of gdx-lml into gdx-liftoff to avoid having to deal with Gradle here.

Relevant part of the build log, https://jitpack.io/com/github/czyzby/gdx-lml/eadeb8193d/build.log :


> Task :autumn:natives:android:compileJava FAILED
warning: [options] bootstrap class path not set in conjunction with -source 1.7
/home/jitpack/build/autumn/natives/android/src/main/java/com/github/czyzby/autumn/android/scanner/AndroidClassScanner.java:12: error: package com.github.czyzby.autumn.scanner does not exist
import com.github.czyzby.autumn.scanner.ClassScanner;
                                       ^
/home/jitpack/build/autumn/natives/android/src/main/java/com/github/czyzby/autumn/android/scanner/AndroidClassScanner.java:21: error: cannot find symbol
public class AndroidClassScanner implements ClassScanner {
                                            ^
  symbol: class ClassScanner
/home/jitpack/build/autumn/natives/android/src/main/java/com/github/czyzby/autumn/android/scanner/AndroidClassScanner.java:22: error: method does not override or implement a method from a supertype
    @Override
    ^
3 errors
1 warning

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':autumn:natives:android:compileJava'.
> Compilation failed; see the compiler error output for details.

@tommyettinger Run gradle installAll, this should correctly link the dependencies between the modules. Gradle setup of this repository is not ideal, to say the least.

Snapshot release should work though, have you included the snapshots repository in your Gradle setup?

I was getting a 502 Bad Gateway from https://oss.sonatype.org/content/repositories/snapshots/com/github/czyzby/ earlier today; it seems to have been on Sonatype's side and has resolved.

I can't get jitpack.io to run installAll without adding a jitpack.yml file to the repo root to tell it how to build; this doesn't matter if the snapshots work again. I wound up copying autumn, autumn-mvc, part of autumn's natives, lml and lml-vis into gdx-liftoff for the current release, which now uses libGDX 1.9.10 . I hope everything is working OK now in gdx-liftoff, @theresajayne !