编辑: 看起来eclipse无法在项目之间同步文件夹,我不得不清理项目并刷新资产文件夹。
我正在尝试使用 libgdx 用 Java 制作游戏。在 Eclipse 调试中一切正常,但是当我将其导出到 JRE 时,它无法加载我的纹理(标准 libgdx.png 纹理效果很好)。我通过将纹理拖放到数据文件夹中,选择“复制”选项,将纹理添加到项目中。在代码中,我使用以下代码加载它:
texture = new Texture(Gdx.files.internal("data/player.png"));
在eclipse的调试中它可以工作。导出到 jre 的项目无法加载纹理(所有纹理都在 jar 文件中),它显示了这些错误:
Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeExcepti
on: com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load file: data/player.
png
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplicati
on.java:113)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load file: data/
player.png
at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:140)
at com.badlogic.gdx.graphics.glutils.FileTextureData.prepare(FileTexture
Data.java:64)
at com.badlogic.gdx.graphics.Texture.load(Texture.java:175)
at com.badlogic.gdx.graphics.Texture.create(Texture.java:159)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:133)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:122)
at com.me.mygdxgame.MyGdxGame.create(MyGdxGame.java:29)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplic
ation.java:127)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplicati
on.java:110)
Caused by: java.io.IOException: couldn't load pixmap 8bit only
at com.badlogic.gdx.graphics.g2d.Gdx2DPixmap.<init>(Gdx2DPixmap.java:57)
at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:138)
... 8 more
我的启动配置就像普通配置一样,但主类从桌面项目设置为 Main。