Android KitKat основывается на Ubuntu 14.04, Неправильном JDK

Я пытаюсь создать Android-x86 ответвление KitKat из android-x86.org на Ubuntu 14.04 64-разрядная машина.

Однако, когда я работаю, делают, это не работает очень долго, пока нет ошибка, которая останавливает компиляцию. Это, кажется, ошибка Java, которой я верю, вызывается Версией JDK, которую я установил.

libcore/libdvm/src/main/java/java/lang/Enum.java:150: error: ordinal has private access in Enum
        return ordinal - o.ordinal;
                          ^

Я понял для KitKat, что JDK 6 необходим, таким образом, я установил OpenJDK6. Я знаю, что это не полностью поддерживается, но не было ничего, чтобы сказать, что это абсолютно не будет работать. Таким образом, я попробовал его так или иначе.

Так или иначе моя проблема состоит в том, что я не могу найти способ получить установленного оракула JDK 6. Я попробовал некоторые репозитории, но они являются или устаревшими или больше не имеют необходимый пакет. Я пошел на архив веб-сайта Oracle, но он требует, чтобы я подписался с деталями "своей компании", которую я не должен давать им.

Есть ли какой-либо способ, которым я могу получить старого оракула установленная версия JDK?

1
задан 27 February 2015 в 03:29

2 ответа

Это может быть проблемой OpenJDK. Иногда JDK Oracle требуется, чтобы заставить что-то работать.

Обычно JDKs вниз совместимы, Вы могли также использовать версию 8.

, Вот учебное руководство, как установить его: http://docs.oracle.com/javase/8/docs/technotes/guides/install/linux_jdk.html

, Если Вы уже установили (чтение: поместите его где-нибудь на Ваш диск), JDK Oracle, можно выбрать его с

update-alternatives --config java

, у меня были проблемы с этим прежде, если JDK, который Вы хотите, не перечислен, необходимо добавить его к альтернативам обновления сначала:

sudo update-alternatives --install /usr/bin/java java /path/to/your/jdk/bin 1

Замена /path/to/your с Вашим путем.

2
ответ дан 10 November 2019 в 09:19

Возможно, это помогает:

diff --git a/libdvm/src/main/java/java/lang/Enum.java b/libdvm/src/main/java/java/lang/Enum.java
index 7a0f514..4b897aa 100644
--- a/libdvm/src/main/java/java/lang/Enum.java
+++ b/libdvm/src/main/java/java/lang/Enum.java

@@ -147,7 +147,7 @@
      * @see java.lang.Comparable
      */
     public final int compareTo(E o) {
-        return ordinal - o.ordinal;
+        return ordinal - o.ordinal();
     }

     /**

Источник: Вопрос и Ответ .

1
ответ дан 10 November 2019 в 09:19

Другие вопросы по тегам:

Похожие вопросы: