[英]LibGDX project isn't launching, it says Could not initialize class org.lwjgl.Sys
[英]Libgdx doesn't work on Fedora 31 - Could not initialize class org.lwjgl.Sys
我從官方網站下載了libgdx(所以我想它是最新的),然后在Intellij中用gradle打開它。 我沒有更改任何代碼並編譯了默認代碼。 這是我的構建配置:
應用程序不起作用,我收到此消息:
Exception in thread "LWJGL Application" java.lang.NoClassDefFoundError: Could not initialize class org.lwjgl.Sys
at org.lwjgl.opengl.Display.<clinit>(Display.java:135)
at com.badlogic.gdx.backends.lwjgl.LwjglGraphics.setVSync(LwjglGraphics.java:592)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:126)
我將 Fedora 31 與 GNOME 3.34.5 一起使用。 你知道如何解決它嗎?
編輯:我嘗試了另一種方法:從 libgdx 的 github 克隆代碼並按照他們的 wiki 中的說明進行操作:
必須關閉本機二進制文件才能運行。 這些二進制文件是在快照構建服務器上構建的,因此您需要運行一個任務來關閉它們。 即使您計划稍后自己構建原生程序,也建議您將其關閉,以便在進行下一步之前測試您的開發環境是否已設置。 從 LibGDX 根目錄通過 Gradle:
./gradlew fetchNatives
After running this I received:
FAILURE: Build failed with an exception.
What went wrong:
Could not initialize class org.codehaus.groovy.runtime.InvokerHelper
我沒有名聲,所以我不能編輯或評論,但經過一些小小的 tweeks,我能夠讓 alekseymishanin 的解決方案發揮作用。
背景信息:Ubuntu 20.04,當我從 JDK 8 切換到 16 時,示例 libGDX 無法構建。
使固定
./gradlew wrapper --gradle-version 7.0
api "com.badlogicgames.gdx:gdx-backend-lwjgl:$gdxVersion"
with api "com.badlogicgames.gdx:gdx-backend-lwjgl3:$gdxVersion"DesktopLauncher.java
中,相應地更新導入,並將Lwjgl3
Lwjgl
例如, new LwjglApplicationConfiguration()
變為new Lwjgl3ApplicationConfiguration()
我在嘗試使用 java 14 和/或 gradle 6.6.1 運行 libgdx 項目時遇到了同樣的問題。
Exception in thread "LWJGL Application" java.lang.NoClassDefFoundError: Could not initialize class org.lwjgl.Sys
當我嘗試使用 gradle 6.6.1 和 java 14 運行項目時出現,以及另一個錯誤:
Could not initialize class org.codehaus.groovy.runtime.InvokerHelper
當我嘗試使用舊版本的 gradle 但仍在使用 java 14 時出現。
也許降級到 java 11 會有所幫助? 它解決了我的問題...
如果您使用的是版本 8 以上的 java,請嘗試更改此
dependencies {
api "com.badlogicgames.gdx:gdx-backend-lwjgl:$gdxVersion"
}
對此
dependencies {
api "com.badlogicgames.gdx:gdx-backend-lwjgl3:$gdxVersion"
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.