Android

Can the Android SDK work with JDK 1.7?

Может ли Android SDK работать с JDK 1.7?

Я только что установил Android SDK R16 и JDK 7, но продолжаю получать сообщение об ошибке


Для Android требуется уровень соответствия компилятору 5.0 или 6.0. Вместо этого найдено '1.7'. Пожалуйста, используйте инструменты Android> Исправить свойства проекта. "


Я использую некоторые функции JRE 1.7, поэтому я не могу просто переключить его на 1.6. Как я могу исправить эту проблему?

Переведено автоматически
Ответ 1

Да, вы можете использовать Java 1.7 для разработки под Android. Вы должны поддерживать совместимость исходного кода с Java 6 во время компиляции, и только следующая проблема связана с измененным алгоритмом по умолчанию для jarsigner.

Это решено в вопросе Stack Overflow Подписание Android с помощью Ant (обходной путь).

Но это уже исправлено в Ant. Так что официальная поддержка скоро появится непосредственно в Android SDK.

Если вы хотите использовать Maven для сборки, решение заключается в том, какие существуют подводные камни для подписи Android APK.

Обновление: Последняя версия Ant, плагина Maven или Gradle не имеет проблем с Java 7 или Java 8, так что это уже устарело.

Ответ 2

Начиная с ADT (22.6), можно использовать функциональные возможности Java 1.7:

ВАЖНО:

Для попытки с ресурсами требуется API 19 и выше:


Добавлена поддержка функций языка Java 7, таких как multi-catch, try-with-resources и diamond operator. Для этих функций требуются инструменты сборки версии 19 или выше. Для работы с ресурсами требуется minSdkVersion 19; для остальных новых функций языка требуется minSdkVersion 8 или выше.


Ответ 3

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

Ответ 4

Стоит упомянуть, что если вы хотите скомпилировать проект с API 21 (Android 5.0 Lollipop), вам придется использовать JDK 1.7.

API 21 больше не будет работать с JDK 1.6.

2023-05-19 04:40 java android