çökmesini sağlar Ben java/android için yeni değilim, bu yüzden bu çözmek için oldukça kolay bir şey olduğunu umuyoruz.libGDX kurulum Java 8 hangi android 1.
Android Studio'ya aktardığım bir proje oluşturmak için libGDX's setup kullanıyorum. Ben Supplier
arayüzü sadece Java 8 için kullanılabilir olduğunu bilmiyordum ve anladığım kadarıyla, tüm android/html/masaüstü/ios sürümleri tarafından paylaşılan bir kütüphane içine derler çekirdek modülünde kullanılmış oyun. Masaüstü sürümü iyi çalışıyor (Java 8 yüklü), ama benim android uygulaması NoClassDefFoundError
hatasıyla çöküyor (BTW, hata mesajı yazdığım sınıfların ismini gösteriyordu ve Supplier
değil, ancak hata en kısa sürede kayboldu) her bir referansı Supplier
'a kaldırdım ve onları eklediğimde geri geldim, dolayısıyla görünüşe göre hata mesajı gerçek problem sınıfını göstermiyor).
Android modülümde Supplier
'u kullanmayı denediğimde, sınıfı içe aktarmama bile izin vermeyecek, bu yüzden bu Java sürümünü desteklemediğini bilecek, ancak bunu çekirdekte kullanmama izin verecek. herhangi bir uyarı olmadan modül. Eminim, Supplier
numaralı başvuruya olan referansları kaldırmak sorunu çözecektir, ancak bu düzeltme, herhangi bir Java 8 özelliğini yanlışlıkla kullanmam durumunda çalışma zamanı hatalarına neden olabilir, bu yüzden sorunu çözmek için iyi bir yol değil.
Java 8'i kullanmak için projede nerede olduğunu bilmiyorum ve görünüşe göre tüm yapılandırma ile ilgili bir sürü .gradle, .xml ve .iml dosyaları gibi görünüyor.
apply plugin: "java"
sourceCompatibility = 1.6
[compileJava, compileTestJava]*.options*.encoding = 'UTF-8'
sourceSets.main.java.srcDirs = [ "src/" ]
eclipse.project {
name = appName + "-core"
}
Android stüdyo sourceCompatibility = 1.6
hat gri gösterir ve bunu üzerine geldiğinizde "Atama kullanılmaz" diyor: Burada çekirdek modülünde benim build.gradle
dosyasıdır. Yani bu problemin bir parçası olabilir. Burada, aynı zamanda
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_6" inherit-compiler-output="false">
kök build.gradle
dosyada core
bölümdür:
Benim core.iml
dosya çok bu satırı içerir Yani
project(":core") {
apply plugin: "java"
dependencies {
compile "com.badlogicgames.gdx:gdx:$gdxVersion"
}
}
, ben izin önlemek için değiştirmek gerektiğini benim ana projemde Java 8 kullanıyorum?