2014-12-13 40 views
1

嗨,我在這裏很新,我在學習如何使用Slick2D遊戲庫。我正在使用Eclipse Luna IDE進行編碼。一切都很好,直到現在,但當我試圖加載「.ogg」擴展名的音樂時,問題發生了。不能將'.ogg'音樂文件加載到Slick2D中的Eclipse項目中

我嘗試通過這行代碼加載音樂 music = new Music(「res/game_music.ogg」);

出現這樣的異常,

AL lib: FreeContext: (000000000E2F08A0) Deleting 64 Source(s) 
Exception in thread "main" java.lang.NoClassDefFoundError: com/jcraft/jorbis/Info 
    at org.newdawn.slick.openal.OggInputStream.<init>(OggInputStream.java:35) 
    at org.newdawn.slick.openal.OggDecoder.getData(OggDecoder.java:311) 
    at org.newdawn.slick.openal.SoundStore.getOgg(SoundStore.java:835) 
    at org.newdawn.slick.openal.SoundStore.getOgg(SoundStore.java:793) 
    at org.newdawn.slick.Music.<init>(Music.java:135) 
    at org.newdawn.slick.Music.<init>(Music.java:74) 
    at main.Game.init(Game.java:48) 
    at org.newdawn.slick.AppGameContainer.setup(AppGameContainer.java:390) 
    at org.newdawn.slick.AppGameContainer.start(AppGameContainer.java:314) 
    at main.Game.main(Game.java:33) 
Caused by: java.lang.ClassNotFoundException: com.jcraft.jorbis.Info 
    at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    ... 10 more 

我可以向你保證, 1.我看着在互聯網上進行足夠的時間找到一個解決方案,令人驚訝的我不能即使找到很多有用的東西其他人也面臨類似的問題。 2.「res/game_music.ogg」是在正確的地方。我在這裏是新的,不能在我的問題中包含圖片,否則我會包含截圖以顯示該文件位於正確的位置。

重要注意事項: 設置該項目時我遇到了一些困惑。我現在不想延長我的問題,所以我現在不談論這個問題。但如果任何人在這裏告訴我,我的問題在這裏與lwjgl.jar/slick.jar/native文件等有關,那麼我會包含它。 在這一刻,只是知道,在嘗試加載音樂之前,其他渲染/更新的東西工作正常。

希望任何有用的答案。

+0

可能是一個不正式支持的ogm文件 – Jay 2014-12-13 02:13:56

回答

3

你必須在你的項目中包括2個罐子。

下載Slick2D archive,然後將lib/jogg-0.0.7.jarlib/jorbis-0.0.15.jar添加到您的項目中。

希望它有幫助。

+0

非常感謝。我收集了一本電子書並正在從中學習。那本愚蠢的書沒有提到包括你爲ogg文件提到的兩個罐子。 – ddhrubo 2014-12-19 11:33:52

相關問題