MeFisto94 / jme3-testing

Unit and Functional Testing for the jMonkeyEngine
MIT License
2 stars 1 forks source link

LWJGL2 Tests failing #3

Open MeFisto94 opened 3 years ago

MeFisto94 commented 3 years ago

https://github.com/jMonkeyEngine/jmonkeyengine/actions/runs/929511145

Apparently from a quick look the lwjgl2 context doesn't even properly start, because the logging output stops after printing the jme version and keeps locking the jvm for every test.

If you look at the results from lwjgl3, there you can see multiple contexts spinning up.

MeFisto94 commented 3 years ago

More investigation: The background is an NoClassDefFoundError when trying to load any of the lwjgl2 classes. I am out of my knowledge/patience for this, because I can't understand how gradle would manage to have broken classpaths just inside of a docker container. Furthermore dependencies correctly lists the lwjgl2 dependency, so there is no sane reason why this isn't working.

There also weren't any changes to this repository, the only thing I could imagine is the bintray issue or the engine updating gradle files/gradle versions, but still this repositories gradle version (gradle 6) is more recent than the current one on the engine.

MeFisto94 commented 3 years ago

I think this is a symptom of https://github.com/jMonkeyEngine/jmonkeyengine/issues/1247

IIRC more modern versions of the jvm/ubuntu fixed the assertion in LD, plainly refusing to load the native library. I am uncertain if that is true, because it depends if being unable to load the native reference, a class will fail with the ClassDefNotFoundError, it's however worth a shot, especially combined with https://github.com/MeFisto94/lwjgl

Sailsman63 commented 3 years ago

I can confirm that newer builds of OpenJDK no longer hang with the LD issue, instead throwing an error. The application is even able to continue cleanly, albeit without access to the native libraries. EDIT: No, it exits the application. Not sure how it ran once.