Ошибка сборки 4.3 Android

Я нашел некоторые ошибки, размещенные на других форумах, но ответа не найдено.

Запустив мой недавно установленный Ubuntu 12.10,

out/target/common/obj/PACKAGING/public_api.txt:22097: error 12: Class android.telephony.gsm.SmsMessage changed static qualifier prebuilts/sdk/api/18.txt:22054: error 9: Removed public constructor SmsMessage() prebuilts/sdk/api/18.txt:22055: error 9: Removed public method android.telephony.gsm.SmsMessage.calculateLength prebuilts/sdk/api/18.txt:22056: error 9: Removed public method android.telephony.gsm.SmsMessage.calculateLength prebuilts/sdk/api/18.txt:22057: error 9: Removed public method android.telephony.gsm.SmsMessage.createFromPdu prebuilts/sdk/api/18.txt:22058: error 9: Removed public method android.telephony.gsm.SmsMessage.getDisplayMessageBody prebuilts/sdk/api/18.txt:22059: error 9: Removed public method android.telephony.gsm.SmsMessage.getDisplayOriginatingAddress prebuilts/sdk/api/18.txt:22060: error 9: Removed public method android.telephony.gsm.SmsMessage.getEmailBody prebuilts/sdk/api/18.txt:22061: error 9: Removed public method android.telephony.gsm.SmsMessage.getEmailFrom .. .. .. 

Очевидно, что gsm.SmsMessage имеет неизвестную проблему со средой построения.

Я попытался переключить версию Java с 1,7 до 1,6. Но это все еще не работает.

Кто-нибудь знает, как это исправить?

благодаря

В моем случае проблема была вызвана javadoc из OpenJDK7, когда я должен использовать один из JDK 6 (Oracle).

На данный момент JDK7 необходим для создания ведущей ветки Android и JDK6 для создания Gingerbread (2.3) через Kitkat (4.4.4).

Если у вас установлено несколько JDK, убедитесь, что вы выбрали правильный для java / javac / javadoc. Вы можете использовать следующие команды:

$ sudo update-alternatives --config java
$ sudo update-alternatives --config javac
$ sudo update-alternatives --config javadoc

Пример вывода для выбора java (первая команда выше):

 Существует 3 варианта альтернативной java (предоставление / usr / bin / java).
   Статус приоритета пути выбора
 -------------------------------------------------- ----------
   0 / usr / lib / jvm / java-7-openjdk-amd64 / jre / bin / java 1051 автоматический режим
 * 1 / usr / lib / jvm / java-6-oracle / jre / bin / java 1 ручной режим
   3 / usr / lib / jvm / java-7-oracle / jre / bin / java 2 ручной режим
 Нажмите enter, чтобы сохранить текущий выбор [*], или введите номер выбора: 

После обширного поиска я, наконец, нашел источник этой ошибки здесь https://groups.google.com/forum/#!msg/android-building/Xw34n7PQJsA/kieneMNt4LkJ . Если повторная загрузка источника не работает, убедитесь, что java, javac и javadoc используют версию 1.6, а не 1.7. По-видимому, javadoc 1.7 имеет своего рода неудобство, вызванное процессом сборки Android AOSP. Это, в свою очередь, вызывает странные ошибки с помощью apicheck usaully this one.

Я мог бы исправить это, коснувшись файлов, чтобы восстановить их.

 $ touch frameworks/opt/telephony/src/java/android/telephony/gsm/SmsManager.java $ touch frameworks/opt/telephony/src/java/android/telephony/gsm/SmsMessage.java $ make 

Ошибки были устранены путем повторной загрузки исходного кода.

Поэтому, если кто-либо из вас столкнулся с такой же ошибкой, я бы предложил вам повторно загрузить источник.

Ошибка должна исчезнуть.

Если вы изменили исходный код на Android, вам нужно будет «make update-api» перед тем, как «make otapackage» обновить изменения api, которые вы сделали

Проблема заключается именно в javadoc, который равен 1,7, но что действительно неправильно, так это то, что после его изменения до 1.6 от oracle и «make clean» это не помогает. Удаляют и загружают источники. Я искал какую-то цель, например «make distclean» или «make mrproper», чтобы избежать переназначения источников, которые требуют много времени. Я ничего не нашел.