Репозиторий не проверяется

Я запускаю Grails 2.4.2 в Windows 7. Из BuildConfig.groovy это определение моего репозитория (фактические URL-адреса заменены на example.com)

    repositories {
    inherits true

    switch ( System.getProperty('grails.env')) {
        case ['production']:
            mavenRepo "http://example.com:8080/artifactory/prod-builds"
            break
        default:
            mavenRepo "http://example.com:8080/artifactory/dev-builds"
    }

    grailsCentral()
    mavenCentral()

В разделе плагинов у меня есть что-то вроде этого

        compile (':myplugin:[14.08.01,]' ) {
        export = false
    }

Когда я впервые компилирую, это работает нормально. Позже мне нужно обновить плагин «myplugin» и изменить версию на «14.13.01». Теперь, когда я перекомпилирую плагин, который ссылается на myplugin, он не подхватывает более позднюю версию. Если я должен внести это изменение:

        compile (':myplugin:[14.13.01,]' ) {
        export = false
    }

Затем я получаю эту ошибку:

Устранение ошибки при получении зависимостей: нет доступных версий для org.grails.plugins:myplugin:zip:[14.13.01,] в указанном диапазоне

Поковырявшись, я вижу, что в каталоге c:/users/{username}/.m2/repository есть каталог org\grails\plugins, содержащий предыдущую версию myplugin. Если я удалю этот каталог, а затем перекомпилирую, я получу самую новую версию моего плагина.

Итак, что мне изменить в файле buildconfig.groovy или в настройках артефакта, чтобы Grails искал последнюю версию подключаемого модуля в артефактах, а не просто искал в моем каталоге .m2.

Запуск очистки-все не помогает


person user3708497    schedule 03.10.2014    source источник


Ответы (2)


Вам нужно использовать версии SNAPSHOT, а не диапазоны версий. В любом случае grails compile --refresh-dependencies должен помочь.

person JBaruch    schedule 05.10.2014
comment
Refresh-зависимости не работают. Использование Refresh-зависимостей загружает самую новую версию в мой локальный каталог .m2, но Grails не загружает ее. Grails продолжает использовать предыдущую версию. Кроме того, эти изменения версии являются версиями выпуска, поэтому моментальный снимок не подходит. - person user3708497; 24.10.2014

Ответ для нас состоял в том, чтобы добавить updatePolicy в строку mavenRepo. Так:

mavenRepo "http://example.com:8080/artifactory/dev-builds", { updatePolicy: 'always' }
person user3708497    schedule 24.10.2014