Я пытаюсь создать собственный AOSP из источника Google. Я выполнил шаги, упомянутые в Документах Google, и смог успешно собрать его и успешно прошить свое устройство изображениями. Тем не менее, я попытался создать его снова после внесения некоторых изменений (в основном просто добавил несколько журналов, чтобы поиграть с ним). Ошибка сборки. Затем я попытался сделать еще раз, он сказал Javac 1.6 найден. Требуется Javac 1.7. Затем я следовал ответам на эту конкретную проблему, используя следующую команду:
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
Затем я выбрал вариант 0. Затем я попытался сделать еще раз. На этот раз это не удалось со следующей ошибкой:
java.lang.UnsupportedClassVersionError: com/google/doclava/Doclava : Unsupported major.minor version 51.0 android build
Изучив все ответы на этот вопрос (я обнаружил, что это задавали так много раз), я обнаружил, что это связано с тем, что время компиляции (более высокая версия) и время выполнения (более низкая версия) JDK не совпадают, и я должен перекомпилировать его с помощью Java 1.7. Как мне это сделать для сборки Android? Я также удивлен, почему я получил ошибку «Найден Javac 1.6. Требуется Javac 1.7». поскольку я успешно создал сборку с использованием Java 1.6.