你能帮我解决这个问题吗?
Exception in thread "main" com.jme3.asset.AssetNotFoundException: Interface/splash.png
at com.jme3.system.JmeDesktopSystem.showSettingsDialog(JmeDesktopSystem.java:112)
at com.jme3.system.JmeSystem.showSettingsDialog(JmeSystem.java:128)
at com.jme3.app.SimpleApplication.start(SimpleApplication.java:125)
at adventure.Q3World.main(Q3World.java:85)
它曾经工作,然后我不得不重新包装所有东西,现在我可能已经忘记了Eclipse中的设置或类似设置。启动文件在那里,但它不在某个路径上。
我想要的是这个,它在我之前的版本中有效:
settings.setSettingsDialogImage("Interface/splash.png");
我也尝试过添加资源面板的路径,但没有其他效果:
在Java构建路径中,列出了资源,但它仍然无效:
我想要工作的更大的代码块以及在内置jar中工作但不在eclipse juno中工作的代码块是:
public static void main(String[] args) {
File file = new File("quake3level.zip");
if (!file.exists()) {
useHttp = true;
}
Q3World app = new Q3World();
AppSettings settings = new AppSettings(true);
settings.setTitle("Dungeon World");
settings.setSettingsDialogImage("Interface/splash.png");
app.setSettings(settings);
app.start();
}
答案 0 :(得分:1)
您能告诉我们您如何运行代码(例如命令行,如果是这样,什么是类路径),以及splash.png的所有位置在您的文件夹结构中的位置?
该文件需要位于类路径中,因为它似乎是此代码加载图像的位置。
String iconPath = sourceSettings.getSettingsDialogImage();
if(iconPath == null){
iconPath = "";
}
final URL iconUrl = JmeSystem.class.getResource(iconPath.startsWith("/") ? iconPath : "/" + iconPath);
if (iconUrl == null) {
// *****LINE 112 below*****
throw new AssetNotFoundException(sourceSettings.getSettingsDialogImage());
}