Выполнить задачу Gradle при компиляции проекта в Spring Boot - PullRequest
0 голосов
/ 08 октября 2018

Несколько модулей в моем веб-приложении Spring Boot (база данных, Paymet).Мне нужно выполнить задачу gradle, когда компилировать модуль базы данных.Я попробовал это ниже, но это выдает ошибки.

dependencies {
 compile project(':pathToDatabaseModule') {
    dependsOn('taskName')
 }
}

Моя задача - скопировать определенный набор файлов.

task taskName(type: Copy) {
 from "${rootDir}/fromPath"
 into "${rootDir}/toPath"
}

Это выдает следующую ошибку,

Gradle DSL method not found: 'dependsOn()'
Possible causes:<ul><li>The project 'intersureplus' may be using a version of the Android Gradle plug-in that does not contain the method (e.g. 'testCompile' was added in 1.1.0).
Upgrade plugin to version 2.3.2 and sync project</li><li>The project 'intersureplus' may be using a version of Gradle that does not contain the method.
Open Gradle wrapper file</li><li>The build file may be missing a Gradle plugin.
Apply Gradle plugin</li>

Все верно, ошибка возникает, когда я добавляю зависящий от внутри скомпилированного блока , как указано выше.Я новичок в учебе, поэтому, пожалуйста, помогите мне решить эту проблему.

1 Ответ

0 голосов
/ 08 октября 2018
Метод

dependsOn предоставляется классом Task в Gradle, вы не можете использовать этот метод нигде в вашем скрипте, и уж точно не в блоке конфигурации dependencies.Если вы хотите создать зависимость между задачей из корневого проекта (пример: build задача) и задачей, определенной в подпроекте :projectpath (например: dependenTask задача), то вы можете написать что-то подобноев скрипте build.gradle вашего корневого проекта:

build.dependsOn(':projectpath:dependenTask')

, что эквивалентно:

project.tasks.getByName('build').dependsOn(':projectpath:dependenTask')

EDIT Вы также можете создать зависимость в другом направлении:сделать задачу из подпроекта database зависимой от задачи «предварительной обработки», определенной в корневом проекте:

в сценарии / database / build.gradle :

tasks.getByName('build').dependsOn(':preProcessTask')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...