Как стать автором
Обновить

Комментарии 9

плагин это и делает, но ещё учитывает всякие суффиксы вида "-RC", "-M" и прочие

Например, версия "1.2.1" будет считаться свежее чем версия "1.2.1-RC2"

У этого плагина есть особенность, что он предлагает версии RC, M, ALFA и т.п. Нужно сделать как указано в их доке, чтобы получать только релизные обновления:

def isNonStable = { String version ->
    def stableKeyword = ['RELEASE', 'FINAL', 'GA'].any { it -> version.toUpperCase().contains(it) }
    def regex = /^[0-9,.v-]+(-r)?$/
    return !stableKeyword && !(version ==~ regex)
}

tasks.named("dependencyUpdates").configure {
    rejectVersionIf {
        isNonStable(it.candidate.version)
    }
}

А есть вообще способ заставить работать этот gradle без доступа к интернету? Даже простейший hello world для андроида - и то лезет что-то скачивать.

Поднять локальное зеркало репозитория пакетов и прописать настройки на него.
Как никак все менеджеры пакетов должны их откуда-то скачивать.

Я примерно так и сделал, скачал некую подборку maven offline, сделал как у них по инструкции. Но увы, все равно кто-то лезет в инет. Причем особенность там в том, что инет (там где я хочу все это поставить) есть, но специфический - пропускает запросы только с определенным user-agent. Я и с подменой заголовков играл - натыкаюсь на другие особенности, уже с https сертификатами и их подменой, версиями tls и прочим.

В общем, я к тому, что современный мир слишком завязан на инет. Исчезли те времена, когда можно было купить (или скачать) cd/dvd с полной оффлайн версией продукта (в том числе среды разработки) и спокойно пользоваться несколько лет, до выхода следующей верси. И это плохо еще тем, что вот такое самопроизвольно-непрерывное обновление всего и вся потенциально может что-то сломать в проекте. Программисты пакетов - тоже люди, и им тоже свойственно ошибаться.

Скачивает он все в локальный репозиторий, который и будет юзать впоследствии. Ну и всегда можно указывать локальные jar-ники в качестве зависимостей.

Intellij idea подсказывает что есть свежие версии

Почему-то, это работает не всегда. И это не работает, если версии прописываются через переменные, а не в местах объявления зависимостей

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории