2016-05-09 6 views
2

Ich versuche, durch eigene AOSP von Google-Quelle zu bauen. Ich habe die Schritte in den Google-Dokumenten verfolgt und konnte erfolgreich das Gerät mit den Bildern erfolgreich flashen. Allerdings habe ich nach einigen Änderungen versucht, es neu zu erstellen (im Grunde nur einige Logs hinzugefügt, um damit herumzuspielen). Der Build ist fehlerhaft. Ich habe dann versucht, wieder zu machen, sagte Javac 1.6 gefunden. Erforderlich Javac 1.7. Ich folgte dann die Antworten für dieses spezielle Problem, indem Sie den folgenden Befehl:java.lang.UnsupportedClassVersionError: com/google/doclava/Doclava: Nicht unterstützte Major.Minor Version 51.0 Android Build

update-alternatives --config javac 
There are 2 choices for the alternative javac (providing /usr/bin/javac). 

    Selection Path           Priority Status 
------------------------------------------------------------ 
    0   /usr/lib/jvm/java-7-openjdk-amd64/bin/javac 1051  auto mode 
* 1   /usr/lib/jvm/j2sdk1.6-oracle/bin/javac  315  manual mode 
    2   /usr/lib/jvm/java-7-openjdk-amd64/bin/javac 1051  manual mode 

ich dann die Option ausgewählt 0. Ich habe dann versucht, wieder zu machen. Dieses Mal ist es mit dem folgenden Fehler fehlgeschlagen:

java.lang.UnsupportedClassVersionError: com/google/doclava/Doclava : Unsupported major.minor version 51.0 android build 

Nachdem man durch die alle Antworten auf diese Frage (Ich fand das so viele Male gefragt), fand ich es, weil die complie Zeit (höhere Version) und Laufzeit (niedrigere Version) JDK passt nicht und ich sollte es mit Java 1.7 neu kompilieren. Wie mache ich das für Android Build? Ich bin auch überrascht, warum ich den Fehler "Javac 1.6 gefunden. Required Javac 1.7." wie ich den Build erfolgreich mit Java 1.6 erstellt habe.

Antwort

7

In diesem Fall ist es mit javac nicht das Problem, aber mit javadoc. Um seine Version zu überprüfen: javadoc -J-version (ja, es ist komisch).

Also müssen Sie verwenden:

update-alternatives --config javadoc 
+0

Danke Jacek für die Antwort. Aber leider habe ich nicht das System laufen, um dies jetzt zu überprüfen. Es tut mir wirklich leid, dass ich Ihre Antwort im Moment nicht überprüfen und akzeptieren kann. –

+0

Danke, habe mein Problem gelöst: – Pip

0

Dieser Fehler bedeutet, dass Sie versuchen, eine Java "class" -Datei zu laden, die mit einer neueren Version von Java kompiliert wurde, als Sie installiert haben.

Zum Beispiel könnte Ihre .class Datei für JDK 7 kompiliert worden sein, und Sie versuchen, es mit JDK 6 auszuführen.

die Lösung So ist entweder:

  • Ihre Java-Runtime-Upgrade oder
  • Recompile die Klasse, wenn Sie die Quelle haben, Ihren lokalen Java-Compiler (falls Sie eine haben).

    Javac FileName.java

Besuch dieses Detail: How to fix java.lang.UnsupportedClassVersionError: Unsupported major.minor version

+0

Dank Harshad. Aber nach dem Ausführen des Befehls: update-alternatives --config javac, sollte es nicht mit Java 7 ausgeführt werden? –

+0

@AnkurBhatia siehe den Link in der Antwort. –

+0

Auch die Java-Version in meinem Builder-Server ist auch Java 1.7. Wirklich verwirrt. –

Verwandte Themen