IntelliJ中libGDX项目无法启动Hiero的问题求助
解决libGDX项目中Hiero无法启动的问题
问题描述
在libGDX项目中尝试启动Hiero工具时遇到两种异常:
- 直接运行desktop模块时,出现类找不到错误:
Error: Could not find or load main class com.badlogic.gdx.tools.hiero.Hiero Caused by: java.lang.ClassNotFoundException: com.badlogic.gdx.tools.hiero.Hiero Process finished with exit code 1
- 用项目自带的
DesktopLauncher(启动游戏的主类)运行时,Hiero界面弹出但出现大量报错。
项目的DesktopLauncher代码:
package com.mygdx.game; import com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application; import com.badlogic.gdx.backends.lwjgl3.Lwjgl3ApplicationConfiguration; import com.mygdx.game.Happy_Warfare; public class DesktopLauncher { public static void main (String[] arg) { Lwjgl3ApplicationConfiguration config = new Lwjgl3ApplicationConfiguration(); config.setForegroundFPS(60); config.setTitle("Happy Warfare"); new Lwjgl3Application(new Happy_Warfare(), config); } }
项目build.gradle的核心依赖配置(已添加gdx-tools):
// core模块依赖 project(":core") { apply plugin: "java-library" dependencies { api "com.badlogicgames.gdx:gdx:$gdxVersion" api "com.badlogicgames.gdx:gdx-box2d:$gdxVersion" api "com.badlogicgames.gdx:gdx-tools:$gdxVersion" // 注释的不一致版本 // implementation group: 'com.badlogicgames.gdx', name: 'gdx-tools', version: '1.12.1' } } // desktop模块依赖 project(":desktop") { apply plugin: "java-library" dependencies { implementation project(":core") api "com.badlogicgames.gdx:gdx-backend-lwjgl3:$gdxVersion" api "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop" api "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-desktop" } }
问题根源
- 直接运行desktop模块时,未指定Hiero的主类,JVM默认找不到目标类
- 使用项目的
DesktopLauncher运行,本质是启动游戏实例,与Hiero的初始化逻辑冲突,导致报错
修复步骤
1. 统一依赖版本
确保gdx-tools的版本与项目全局的gdxVersion(1.12.0)一致,移除注释的1.12.1版本依赖,避免版本冲突。
2. 创建独立的Hiero运行配置
在IDE中新建Java Application运行配置:
- 主类:
com.badlogic.gdx.tools.hiero.Hiero - 模块选择:
:desktop(Hiero依赖桌面端的LWJGL3后端) - 保存配置后运行,Hiero即可正常启动
3. 同步Gradle依赖(可选)
若配置后仍无法运行,执行Gradle命令清理并构建模块:
gradlew desktop:clean desktop:build
内容的提问来源于stack exchange,提问作者eburke
相关产品推荐
相关产品推荐

