2016-08-03 71 views
0

Ich möchte eine Anwendung für Android Wear erstellen. In IntelliJ IDEA 2016.2.1 gehe ich zu Datei -> Neu -> Projekt und wähle Android-Projekt. Ich überprüfe nur das Kästchen "Wear" und mache das minimale SDK "N: Android API 23, N Vorschau (Vorschau)".IntelliJ - Erstellen einer Anwendung für Android Wear

Ich erstelle einen Android Wear Emulator, der "Android N, API 23" ausführt.

Als ich die MainActivity ich folgende Fehlermeldung erhalten, laufen:

Error:Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/dx/command/Main : Unsupported major.minor version 52.0 
Error: at java.lang.ClassLoader.defineClass1(Native Method) 
Error: at java.lang.ClassLoader.defineClass(ClassLoader.java:800) 
Error: at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 
Error: at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) 
Error: at java.net.URLClassLoader.access$100(URLClassLoader.java:71) 
Error: at java.net.URLClassLoader$1.run(URLClassLoader.java:361) 
Error: at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
Error: at java.security.AccessController.doPrivileged(Native Method) 
Error: at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
Error: at java.lang.ClassLoader.loadClass(ClassLoader.java:425) 
Error: at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
Error: at java.lang.ClassLoader.loadClass(ClassLoader.java:358) 
Error: at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482) 
Error:Execution failed for task ':app:transformClassesWithDexForDebug'. 
> com.android.build.api.transform.TransformException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1 

Wenn ich Datei -> Projekteinstellungen unter "Projekt" Project SDK ist "Android API 23, N Vorschau Platform". Unter "Module" sind das App Module SDK und das WearApplicationTest Module beide "Project SDK (Android API 23, N Preview Platform)".

Unter Plattformeinstellungen -> SDKs Ich habe das Java 1.8 SDK mit dem korrekten JDK-Startpfad "/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home". Ich habe auch das Java 1.7 SDK mit dem korrekten JDK Hauptpfad "/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home".

Zusätzlich habe ich das "Android API 23, N Vorschau Plattform" SDK, das ein Build-Ziel von "Android API 23, N Vorschau (Vorschau)" und Java SDK von 1.8 hat. Ich habe auch das "Android API 24 Platform" SDK mit einem Build-Ziel von "Android API 24" und Java SDK von 1.8. Und schließlich habe ich das "Android API 23 Platform" SDK mit dem Build-Ziel "Android API 23" und Java SDK von 1.7.

Hier ist meine build.gradle:

apply plugin: 'com.android.application' 


android { 
    compileSdkVersion 'android-N' 
    buildToolsVersion "24.0.1" 

    defaultConfig { 
     applicationId "****.wearapplicationtest" 
     minSdkVersion 'N' 
     targetSdkVersion 'N' 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.google.android.support:wearable:1.4.0' 
    compile 'com.google.android.gms:play-services-wearable:9.2.1' 
} 

Antwort

1

Versuchen Sie Ihr Android-SDKs und Tools auf die neueste Version mit SDK-Manager und ändern Ihre Referenzen von "N" bis 24 in Ihrem build.gradle

android { 
    compileSdkVersion 24 
    buildToolsVersion "24.0.1" 

    defaultConfig { 
     applicationId "****.wearapplicationtest" 
     minSdkVersion 24 
     targetSdkVersion 24 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.google.android.support:wearable:1.4.0' 
    compile 'com.google.android.gms:play-services-wearable:9.2.1' 
} 
+0

Aktualisierung Alle meine Android SDKs und Tools sind aktualisiert. Wenn ich etwas in der build.digle ändere, auch wenn ich es zurück ändere, kann Gradle Project Sync nicht abgeschlossen werden und ich bekomme den folgenden Fehler: 'Fehler: Das angegebene javaHome scheint ungültig zu sein. Ich kann die ausführbare Java-Datei nicht finden. Erprobter Ort:/Benutzer/*****/Android/bin/java'. Dieser Speicherort ist nicht der Speicherort, den ich im Startpfad des Java 1.8 SDK in Project Struct -> Platform Settings -> SDKs angegeben habe. Wenn ich den Java-Home-Ordner an den Ort verschiebe, an dem er versucht hat, funktioniert es immer noch nicht. – Infamous911

+0

Bitte helfen Sie, Herr/Frau! – Infamous911

+0

dann fixieren Sie den Speicherort auf demselben SDKs-Bildschirm. Was wahrscheinlich passiert ist, dass Ihr Computer auf das neueste Java aktualisiert wurde (derzeit 102) und der Pfad zum JDK geändert wurde und intellij den neuen Speicherort kennen muss. Dies können Sie tun, indem Sie auf die Schaltfläche ... klicken und den Pfad festlegen. Wenn es korrekt ist, füllt sich der Klassenpfadbereich unterhalb mit vielen Jars, die im jdk enthalten sind! HTHS! – petey