Отчетность по Java 7 не установлена?

Хорошо, я пытаюсь создать Android ROM, но возвращается следующая ошибка:

************************************************************

You are attempting to build with the incorrect version
of java.

Your version is: Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar
 java version "1.7.0_79" OpenJDK Runtime Environment (IcedTea 2.5.6)
(7u79-2.5.6-0ubuntu1.15.04.1) OpenJDK 64-Bit Server VM (build 24.79-b02, mixed mode).
The required version is: "1.7.x"

Please follow the machine setup instructions at
 https://source.android.com/source/initializing.html
************************************************************

При выполнении lunch aosp_grouper-userdebug.

Я пытался установить устаревшие версии java 7 из архива, но я понятия не имею, как установить две версии java 7 вместе с файлом tar.

Помощь?

Дистрибутив: Ubuntu 15.04

1
задан 23 August 2015 в 22:36

1 ответ

В build/core/main.mk java_version_str содержит вывод "Java - версия":

Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar 
java version "1.7.0_79"
OpenJDK Runtime Environment (IcedTea 2.5.6) (7u79-2.5.6-0ubuntu1.15.04.1)
OpenJDK 64-Bit Server VM (build 24.79-b02, mixed mode)

java_version, как предполагается, извлекает "1.7.0_79" использующий grep. Каре в начале grep регулярного выражения "^java" указывает, что автор намеревался смочь найти строку, запускающуюся с "Java". К сожалению, GNU Делают переменные, не хранят окончания строки. Таким образом, grep только видит, что одна гигантская строка запускается с "Выбранного".

grep работает случайно, когда "версия Java", оказывается, находится на первой строке. Это, вероятно, почему "сброшенный _JAVA_OPTIONS" был добавлен в java_version_str, потому что он вызывал подобные проблемы.

простое решение состоит в том, чтобы следовать, текущее временное решение путем добавления "сбросило JAVA_TOOL_OPTIONS" к java_version_str:

java_version_str := $(shell unset _JAVA_OPTIONS && unset JAVA_TOOL_OPTIONS && java -version 2>&1)
javac_version_str := $(shell unset _JAVA_OPTIONS && unset JAVA_TOOL_OPTIONS && javac -version 2>&1)

действительное решение не состояло бы в том, чтобы использовать промежуточную переменную java_version_str и выполнить grep непосредственно:

java_version := $(shell java -version 2>&1 | grep '^java .*[ "]1\.7[\. "$]')
javac_version := $(shell java -version 2>&1 | grep '[ "]1\.7[\. "$]')
1
ответ дан 24 August 2015 в 08:36
  • 1
    Я думаю, что, возможно, сбивал с толку, диск монтируется и размонтировался чисто. It' s просто это, в то время как it' s не смонтированный, но соединен и включен, это обнаруживается в /dev/disks/by-uuid/ каталог. – Arronical 15 November 2016 в 03:53

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

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