В настоящее время я разрабатываю приложение Flutter для своего Mac и пытаюсь протестировать свое приложение на эмуляторе Android. Чтобы облегчить это, я установил Android Studio вместе с Android SDK. Запуск flutter Doctor --verbose показывает, что все настроено правильно. (никаких предупреждений и ошибок)
Однако я столкнулся с проблемой, связанной с версиями Java. Когда я пытаюсь запустить свое приложение для Android, я получаю сообщение об ошибке, в котором говорится, что моя версия Gradle (Gradle-6.9.3, которую я предпочитаю не менять) несовместима с моим JDK. Согласно сообщению об ошибке, для обеспечения совместимости моя система должна использовать Java 15.
Когда я запускаю java --version, выходные данные показывают, что я действительно использую Java 15. Кроме того, я установил переменную среды $JAVA_HOME на вывод /usr/libexec/java_home -v 15, поэтому она должна ссылаться на правильную версию Java.
Однако проблема остается. Когда я выполняю flutter Doctor --verbose, он возвращает Java-версию среды выполнения OpenJDK (сборка 17.0.6+0-17.0.6b802.4-9586694). Это говорит о том, что Flutter использует Java 17 вместо Java 15, на который ссылается $JAVA_HOME.
Моя гипотеза состоит в том, что либо Flutter, либо Android Studio могут использовать свои собственные встроенные JDK, который, похоже, отменяет настройки моей системы. Я ищу способ изменить это поведение, чтобы Flutter использовал версию JDK, указанную в $JAVA_HOME.
Чтобы решить эту проблему, я установил Java 15. и соответствующим образом настроил переменную среды $JAVA_HOME. Кроме того, я изменил команду Flutter так, чтобы она устанавливала правильное значение $JAVA_HOME непосредственно перед выполнением Flutter.
Несмотря на эти изменения, кажется, что Flutter по-прежнему игнорирует $JAVA_HOME. и вместо этого использовать встроенную версию Java. Это проблематично, поскольку мне нужно использовать Java 15 для совместимости с другими инструментами и библиотеками в моем проекте.
Я рассматривал возможность полного удаления Java 17 из моей системы как потенциальное решение. Однако когда я запустил sudo /usr/bin/find / -name "*.jdk", чтобы найти все установленные JDK, мне не удалось найти JDK 17. Кроме того, запустив /usr/libexec/java_home -V< /code> не показывает JDK 17.
Я ожидал, что Flutter будет использовать версию JDK, указанную в переменной среды $JAVA_HOME. Вместо этого он, похоже, использует свою собственную версию, независимо от настроек моей системы.
Есть ли у кого-нибудь идеи, как это исправить? Любой совет или руководство будут очень признательны. Спасибо!
Подробнее здесь: https://stackoverflow.com/questions/766 ... -java-home
Флаттер не использует jdk из JAVA_HOME ⇐ JAVA
Программисты JAVA общаются здесь
1729704831
Anonymous
В настоящее время я разрабатываю приложение Flutter для своего Mac и пытаюсь протестировать свое приложение на эмуляторе Android. Чтобы облегчить это, я установил Android Studio вместе с Android SDK. Запуск flutter Doctor --verbose показывает, что все настроено правильно. (никаких предупреждений и ошибок)
Однако я столкнулся с проблемой, связанной с версиями Java. Когда я пытаюсь запустить свое приложение для Android, я получаю сообщение об ошибке, в котором говорится, что моя версия Gradle (Gradle-6.9.3, которую я предпочитаю не менять) несовместима с моим JDK. Согласно сообщению об ошибке, для обеспечения совместимости моя система должна использовать Java 15.
Когда я запускаю java --version, выходные данные показывают, что я действительно использую Java 15. Кроме того, я установил переменную среды $JAVA_HOME на вывод /usr/libexec/java_home -v 15, поэтому она должна ссылаться на правильную версию Java.
Однако проблема остается. Когда я выполняю flutter Doctor --verbose, он возвращает Java-версию среды выполнения OpenJDK (сборка 17.0.6+0-17.0.6b802.4-9586694). Это говорит о том, что Flutter использует Java 17 вместо Java 15, на который ссылается $JAVA_HOME.
Моя гипотеза состоит в том, что либо Flutter, либо Android Studio могут использовать свои собственные встроенные JDK, который, похоже, отменяет настройки моей системы. Я ищу способ изменить это поведение, чтобы Flutter использовал версию JDK, указанную в $JAVA_HOME.
Чтобы решить эту проблему, я установил Java 15. и соответствующим образом настроил переменную среды $JAVA_HOME. Кроме того, я изменил команду Flutter так, чтобы она устанавливала правильное значение $JAVA_HOME непосредственно перед выполнением Flutter.
Несмотря на эти изменения, кажется, что Flutter по-прежнему игнорирует $JAVA_HOME. и вместо этого использовать встроенную версию Java. Это проблематично, поскольку мне нужно использовать Java 15 для совместимости с другими инструментами и библиотеками в моем проекте.
Я рассматривал возможность полного удаления Java 17 из моей системы как потенциальное решение. Однако когда я запустил sudo /usr/bin/find / -name "*.jdk", чтобы найти все установленные JDK, мне не удалось найти JDK 17. Кроме того, запустив /usr/libexec/java_home -V< /code> не показывает JDK 17.
Я ожидал, что Flutter будет использовать версию JDK, указанную в переменной среды $JAVA_HOME. Вместо этого он, похоже, использует свою собственную версию, независимо от настроек моей системы.
Есть ли у кого-нибудь идеи, как это исправить? Любой совет или руководство будут очень признательны. Спасибо!
Подробнее здесь: [url]https://stackoverflow.com/questions/76683314/flutter-not-using-jdk-from-java-home[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия