База данных (Liquibase) с Gradle - не могу перевести POM.xml - PullRequest
0 голосов
/ 20 ноября 2018

Я пытаюсь перевести ia maven pom.xml в build.gradle.Но я не знаю, как ...

<plugin>
  <groupId>org.liquibase</groupId>
  <artifactId>liquibase-maven-plugin</artifactId>
  <version>3.0.5</version>
 <configuration>
  <changeLogFile>src/main/resources/bank_schema.xml</changeLogFile>
  <driver>com.mysql.jdbc.Driver</driver>
  <url>jdbc:mysql://localhost/bank</url>
  <username>teller</username>
  <password>password</password>
 </configuration>
 <executions>
  <execution>
   <phase>process-resources</phase>
  <goals>
   <goal>update</goal>
  </goals>
  </execution>
 </executions>
</plugin>

Мой код build.gradle до сих пор:

dependencies {
   [...]
    compile group: 'mysql', name: 'mysql-connector-java', version:'5.1.27'
    classpath('org.liquibase:liquibase-gradle-plugin:2.0.1') {
        exclude(module: 'liquibase-core')   // exclude the dependency on liquibase-core:3.3.5
    }
    classpath('org.liquibase:liquibase-core:3.4.0')
}
apply plugin: 'org.liquibase.gradle'

liquibase {
    activities {
        main {
            changeLogFile 'scr/main/resources/bank_schema.xml'
            url 'jdbc:mysql://localhost/bank'
            driver 'com.mysql.jdbc.Driver'
            username 'teller'
            password 'password'
        }
    }
    runList = 'main'
}

Я не знаю, как это реализовать, особенно частьказни

Я получаю эту ошибку:

Could not find method classpath() for arguments [org.liquibase:liquibase-gradle-plugin:2.0.1,  build_j5vwxauqx5o94sjkyaxcsyeo$_run_closure2$_closure7@1fd4c2e3] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.

Я надеюсь, что кто-то может мне помочь:)

------ ОБНОВЛЕНИЕ:

СейчасУ меня есть:

plugins {
    id 'java'
    id 'maven'
    id 'org.liquibase.gradle' version '2.0.1'
}

group 'cucumber_cash_withdrawal'
version '1.0-SNAPSHOT'

sourceCompatibility = 1.8
targetCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
      [...]
    liquibaseRuntime 'org.liquibase:liquibase-core:3.6.1'
    liquibaseRuntime 'org.liquibase:liquibase-groovy-dsl:2.0.1'
    liquibaseRuntime 'mysql:mysql-connector-java:5.1.34'
}

liquibase {
    activities {
        main {
            changeLogFile 'scr/main/resources/bank_schema.xml'
            url 'jdbc:mysql://localhost/bank'
            driver 'com.mysql.jdbc.Driver'
            username 'teller'
            password 'password'
        }
    }
    runList = 'main'
}

Но это все еще не работает ... Я получаю 'org.gradle.api.NamedDomainObjectContiner' нельзя применить к '(java.lang.String)'

...