libgdx - Gdx.files.internal(); - >找不到文件

7 java eclipse audio desktop libgdx

我一直无法使用libgdx中的Gdx.files.internal(); 似乎每次我作为桌面应用程序运行它我得到这个主要错误:

引起:com.badlogic.gdx.utils.GdxRuntimeException:找不到文件:\ data\sounds\music\mainmusic.mp3(内部),位于com.badlogic.gdx.files.FileHandle.read(FileHandle.java:136)at com.badlogic.gdx.backends.lwjgl.audio.Mp3 $ Music.(Mp3.java:42)... 10更多

我已经阅读了5个不同的主题,其中一个似乎是最可能的问题所以我试过......

  1. 在资产下创建数据文件夹
  2. 刷新日食探险家
  3. 项目>清洁
  4. 在bin中手动创建资产/数据文件夹(在核心中)
  5. 三重检查文件路径
  6. 重新启动IDE

我的完整路径是/ Flipcrew Legends-desktop/assets/data/sounds/music/mainmusic.mp3

公共类SplashScreen实现Screen {

final FlipcrewLegends game;

Texture splashTexture;
Sprite splashSprite;
SpriteBatch batch;
TweenManager manager;
Music introMusic;

public SplashScreen(FlipcrewLegends game) {
    this.game = game;

    introMusic = Gdx.audio.newMusic(Gdx.files.internal("data/sounds/music/mainmusic.mp3"));
    introMusic.setLooping(true);

}
Run Code Online (Sandbox Code Playgroud)

这不过......似乎......

@Override
public void show() {

    splashTexture = new Texture("data/images/main/splash.png");
    splashTexture.setFilter(TextureFilter.Linear, TextureFilter.Linear);

    splashSprite = new Sprite(splashTexture);
    splashSprite.setColor(1, 1, 1, 0);
}
Run Code Online (Sandbox Code Playgroud)

路径:/ Flipcrew Legends-desktop/assets/data/images/main/splash.png

//其余的类被省略b/c它似乎没有必要(我可以根据要求添加它)

//不幸的是,Gdx.audio.newMusic似乎没有直接的字符串路径方法所以我无法尝试

附加信息: - >我尝试将桌面文件夹中的assets文件夹从核心复制到无效(删除后) - >一个线程说libgdx通常从android文件夹中获取数据然后将其应用到桌面上(不幸的是我开始只使用桌面,没有android)但我猜libgdx自那个帖子的最后一个日期以来每晚都有更新,也许已经添加了替代方案?

编辑:

  1. 刚刚将资产/数据/等等恢复到资产/等等.....即使new Texture(path);是得到相同的错误 - 仍然无法正常工作...上面的重试方法,将在发布后重新启动计算机,可能是一个编译问题.

  2. 重启电脑,没什么区别

Por*_*une 5

通过转到Project-> Clean来尝试"清理"您的项目.还可以通过右键单击并使用Gradle-> Refresh All来尝试"刷新"您的libGDX桌面文件夹

libGDX使用链接文件夹.您只需将文件复制到您的资产文件夹之一(在eclipse中执行此操作,而不是在文件资源管理器中执行此操作.)