LibGDX Projelerinde "Couldn't load file: badlogic.jpg" Hatası ve Çözümü | Şakir Mehmetoğlu
Bu sorun LibGDX ile proje geliştirmeye yeni başlayan neredeyse herkesin başına gelmektektedir. Eğer sadece mobil ortam için geliştirme yapıyorsanız ve yine mobil ortamda test ediyorsanız hiç karşılaşmazsınız ama eğer geliştirdiğiniz projeyi bilgisayar ortamında test etmek isterseniz hemen karşınıza bu hata çıkacaktır.
LibGDX projelerini Android Studio ve Eclipse ortamlarında geliştirirken Android modülü otomatik olarak IDE tarafından tanınıyor ve başlatmak için gerekli ayarlar otomatik yapılıyor. Diğer modüller için kendimizin bir başlatıcı oluşturmamız gerekiyor.
Sorunun sebebi badlogic.jpg dosyasının projenin kök dizininde değil de Android modülü içindeki assets klasöründe olmasıdır. Android modülünü başlattığımız zaman zaten dosya kendi modülü içinde olduğu için hatasız çalışıyor ama diğer modülleri başlattığımız zaman dosyayı bulamıyor.
Sorunu çözmek için yeni bir başlatıcı oluşturabilir veya kendi başlatıcınızı düzenleyebilirsiniz. Ben Android Studio için anlatacağım. Menüleri aynı olmasa da işlem olarak aynı adımları izleyerek Eclipse ve Netbeans ortamlarında da sorunu çözebilirsiniz. Adım adım ilerleyelim;
1. Adım; Run menüsü altındaki Edit Configurations‘ a tıklayın. Aşağıdaki pencere açılacaktır.
2. Adım; Sol üstteki + butonuna tıklayın ve Application‘ı seçin. Karşımıza aşağıdaki ekran gelecektir.
3. Adım; Öncelikle en üstteki Name: bölümüne Desktop yazın. Ardından Main class: yazan yere kendi projenizdeki desktop modülü içinde olan DesktopLauncher sınıfının yolunu yazın. Nasıl yazacağınızı bilmiyorsanız veya yazmak istemiyorsanız yerine yanındaki ... butonuna tıklayarak seçebilirsiniz. Working directory: kısmı otomatik dolu gelecektir. Şimdilik dokunmadan geçin. Birazdan tekrar düzenleyeceğiz. Daha sonra Use class of module: bölümünden desktop modülünü seçin ve Apply butonuna tıklayın. Son olarak OK butonuna tıklayarak işlemi tamamlayın ve projeyi Desktop modülünden çalıştırın.
4. Adım; Gördüğünüz gibi proje çalışmadı. Muhtemelen siz de bu hatanın çözümü için bu makaleyi okuyorsunuz. Bu hatayı bilinçli olarak vermesini sağladım. Böylelikle sizinle aynı seviyede oldum ve şimdi hatanın çözümünü göstereceğim. Tekrardan Run menüsü altındaki Edit Configurations‘ a tıklayın ve sol taraftan Application altındaki Desktop menüsünü seçin.
5. Adım; Yukarıda da belirttiğim gibi sorunun sebebi dosyanın yolunun farklı olmasıdır. Şimdi Working directory: kısmındaki projenizin adının sonuna \android\assets ekleyin. Yazmak yerine yanındaki ... butonuna tıklayarak da seçebilirsiniz. Böylelikle Desktop projesini çalıştırdığımız zaman dosyaları kendi modülü içinde değil de android modülü içinde arayacaktır ve hatasız çalışacaktır. Artık projenize bir dosya ekleyecek olursanız onu doğruca android modülü altındaki assets klasörüne eklemeniz yeterli olacaktır. Son olarak projeyi Desktop modülünden tekrar çalıştırın.
Gördüğünüz gibi proje sorunsuz çalıştı. Artık herhangi bir problem olmadan android modülü altındaki assets klasöründen tüm dosyalarınızı yönetebilirsiniz.
Tarih:AndroidJavaMasaüstü ProgramlamaMobil Programlama
LibGDX desktop error
LibGDX image error
LibGDX image not found
LibGDX resim sorunu
Önceki Yazı Javac ve Javaw Nedir ?
Sonraki Yazı LibGDX Nedir ? Nasıl Kurulur ?