Почему uploadArchives не указан в списке задач?

Я думал, что uploadArchives-это задача, которая предоставляется плагином java. В моем телосложении.gradle я использую плагин java:

apply plugin: 'java'

но если я призываю gradle tasks в командной строке я не вижу задачу uploadArchives.

даже не с gradle gradle tasks --all

задача uploadArchives указана в документации плагина java gradle см.http://www.gradle.org/java_plugin (таблица 11).

Я использую версию gradle 1.0-milestone-6.

Я могу вызвать gradle uploadArchives без ошибок, но задача не указан.

2 ответов


задача uploadArchives добавляется, как правило, в сценарий сборки, а не явно по имени. В выводе "gradle tasks" вы должны увидеть следующую строку:

Pattern: upload<ConfigurationName>: Assembles and uploads the artifacts belonging to a configuration.

Это означает, что для каждой конфигурации в файле build, существует по uploadTask. Плагин java добавляет конфигурацию с именем archives в сценарий сборки. Добавляя конфигурацию "архивы" в сценарий сборки явно плагином java, задача uploadArchives добавляется неявно тоже.

существуют сценарии, в которых gradle не может знать, какие задачи должны быть материализованы правилом.

Е. Г.

tasks.addRule("Pattern: ping<ID>") { String taskName ->
    if (taskName.startsWith("ping")) {
        task(taskName) << {
            println "Pinging: " + (taskName - 'ping')
        }
    }
}

нет способа выяснить, какие задачи ping должны быть показаны, поскольку они просто материализованы при запуске из командной строки через "gradle pingServer1 pingServer2 pingServer3"

С уважением, Рене!--3-->


задача uploadArchives является частью Maven-плагина. Вы должны добавить:

apply plugin: 'maven'