Java开发FlappyBird时DesktopLauncher报错找不到F如何解决
问题场景
基于LibGDX框架开发Flappy Bird游戏,通过DesktopLauncher启动测试时触发两处「找不到符号」编译错误,原始出错代码如下:
package com.mygdx.flappy; import com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application; import com.badlogic.gdx.backends.lwjgl3.Lwjgl3ApplicationConfiguration; public class DesktopLauncher { public static void main (String[] arg) { Lwjgl3ApplicationConfiguration config = new Lwjgl3ApplicationConfiguration(); config.width = 480; // 第一处报错位置 config.heigth = 800; // 第二处报错位置 new Lwjgl3Application(new MainFlappyBird(), config); } }
错误参考截图:
错误根因
- 写法不兼容:新版LibGDX的
Lwjgl3ApplicationConfiguration类没有暴露可直接赋值的width公有字段,设置窗口尺寸必须调用官方提供的实例方法,直接访问不存在的字段自然会报找不到符号。 - 拼写错误:表示高度的单词正确拼写是
height,你写的heigth把i和g的顺序写反了,就算在支持直接赋值字段的旧版本LibGDX里,这行也会因为拼写错误编译失败。
修复方法
删掉原来直接给width、heigth赋值的两行代码,替换为官方提供的窗口模式配置方法即可,修正后的完整可运行代码:
package com.mygdx.flappy; import com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application; import com.badlogic.gdx.backends.lwjgl3.Lwjgl3ApplicationConfiguration; public class DesktopLauncher { public static void main (String[] arg) { Lwjgl3ApplicationConfiguration config = new Lwjgl3ApplicationConfiguration(); // 设置窗口尺寸为480宽、800高 config.setWindowedMode(480, 800); // 可按需追加窗口标题、帧率限制等其他配置 config.setTitle("FlappyBird"); new Lwjgl3Application(new MainFlappyBird(), config); } }
如果你使用的是远古版本LibGDX,确实支持直接给
width、height字段赋值,那只需要把拼错的heigth改成height就能解决编译错误,但还是更推荐用官方封装的配置方法,跨版本兼容性更好。
内容的提问来源于stack exchange,提问作者DAXX KT
相关产品推荐
相关产品推荐

