Nano Hash - криптовалюты, майнинг, программирование

Как обновить Android Studio 2.3 до инструментов сборки 25, чтобы исправить. Редакция SDK Build Tools (21.1.2) слишком мала для проекта. Требуемый минимум — 25.0.0

Какие конфигурационные переменные и значения следует установить для обновления до Build Tools 25.0.2? Следование сообщениям Android Studio не позволило мне исправить мои сценарии сборки Gradle к удовлетворению Gradle.

Приложение отлично работает в Android Studio 2.2 - повторные сборки и развертывания прошли нормально. Обновил Android Studio до версии 2.3, теперь возникают ошибки The SDK Build Tools revision (21.1.2) is too low for project Minimum required is "25.0.0"

Я выполнил подсказки на вкладке «Сообщения» для build.gradle каждого модуля проекта и добавил buildToolsVersion '25.0.0' к каждому, как указано, но это не решило проблему и не изменилось на buildToolsVersion '25.0.2'.

Я аннулировал кеш и повторно синхронизировал градиент; аннулировал кеш и перезапустил Android Studio; и аннулировал кеш, остановил Android Studio, rm -R просмотрел различные build каталоги, запустил текстовый поиск «21». без каких-либо хитов, и перезагрузил мой ноутбук. Неудачно.

(обратите внимание, что это не то же самое, что https://github.com/c-h-/android_core; в этом вопросе Шьямнат Маллинатан пытается выяснить, как он может продолжать использовать инструменты сборки версии 23.0.3, тогда как я пытаюсь выяснить, как перейти на самую последнюю версию инструментов сборки — 25.0.2 в время, когда я поднял это)


  • Столкнулся с похожими проблемами, смог решить, указав на buildtools - 25 Поделитесь своими файлами gradle, main и app должны делать. 21.03.2017
  • также вы можете использовать следующую команду, чтобы получить график зависимостей зависимостей вашего приложения. 21.03.2017
  • Спасибо @Neji - решено 1) установкой buildToolsVersion '25.0.2' во всех файлах build.gradle всех модулей и 2) добавлением compileSdkVersion 25 и buildToolsVersion '25.0.2' в build.gradle верхнего уровня, которые раньше не включали его. Похоже, произошли изменения в том, как gradle распространял/разрешал версию Build Tools в проекте. 21.03.2017

Ответы:


1

Благодаря @Neji: - Я решил это

1) запуск "gradle dependencies", чтобы получить график зависимостей моего приложения

2) установка buildToolsVersion '25.0.2' во всех файлах модулей 'build.gradle и

3) добавление compileSdkVersion 25 и buildToolsVersion '25.0.2' к верхнему уровню build.gradle

07.04.2017
  • Блок android не должен находиться в корневом build.gradle, если вы используете отдельные модули. 07.04.2017
  • Это не? Спасибо, хотя я удивлен: я думал, что он предназначен для установки значений по умолчанию для всего приложения, которые затем могут быть переопределены каждым модулем. В этом случае мои проблемы имеют больше смысла, но я ожидал, что ошибка Gradle укажет мне на это. Я начал свой проект как ответвление github.com/c-h-/android_core, у которого есть android пункты в build.gradle верхнего уровня, и никаких проблем до самого последнего обновления. 07.04.2017
  • Оооо, дерьмо, ты используешь блок allprojects? Подождите, блок android доступен только после применения плагина com.android.application или ...library, который вы должны делать только в модулях. 07.04.2017
  • да, я использую allprojects. Где хорошее место, чтобы изучить все эти правила «если-тогда-исключение-иначе» для Gradle? 07.04.2017
  • Спасибо Евгений; github.com/c-h-/android_core появился несколько лет назад, и мне кажется, по-прежнему сосредоточен на том, чтобы заставить работать ROS-Java, а не на хороших практиках Android/Gradle. 07.04.2017
  • Вы просто подбираете их по ходу дела, вы можете получать полезные вещи, подписываясь на Джейка Уортона или Genymotion в Твиттере, собирая Google Speed ​​Gradle и следуя советам. Я где-то читал, чтобы избежать allprojects, потому что он отключает параллельные сборки, которые, в свою очередь, быстрее создают развязанные модули. Я забыл, что allprojects существует :D 07.04.2017
  • О, это просто противно. согласно моему комментарию на stackoverflow.com/a/35708264/1200764 мне очень не хватает видимости Ant, хотя мне нравится внедрение зависимостей с Maven/Gradle. 07.04.2017
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

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

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..