mvn liquibase: diff, каждый раз генерирует один и тот же файл - PullRequest
0 голосов
/ 30 сентября 2019

При любых изменениях, внесенных в постоянную сущность, только изменения, внесенные в сущность, должны отражаться в сгенерированном файле diff liquibase. Но в настоящее время он генерирует полный файл журнала изменений каждый раз при запуске "mvn liquibase: diff".

Настройки находятся в файле pom.xml

<plugin>
    <groupId>org.liquibase</groupId>
    <artifactId>liquibase-maven-plugin</artifactId>
    <version>3.5.3</version>
    <configuration>                  
        <propertyFile>src/main/resources/liquibase.properties</propertyFile>
        <diffChangeLogFile>src/main/resources/db/changelog/migrations/changelog.${timestamp}.xml</diffChangeLogFile>
        <referenceUrl>hibernate:spring:com.company.project?hibernate.physical_naming_strategy=org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy&amp;dialect=org.hibernate.dialect.PostgreSQLDialect</referenceUrl>
        <changeLogFile>src/main/resources/db/changelog/db.changelog-master.xml</changeLogFile>
        <outputChangeLogFile>src/main/resources/db/changelog/db.changelog.xml</outputChangeLogFile>
        <driver>org.postgresql.Driver</driver>
        <url>jdbc:postgresql://localhost:5432/db</url>
        <defaultSchemaName>db</defaultSchemaName>
        <username>***</username>
        <password>***</password>
    </configuration> 
    <dependencies>
        <dependency>
            <groupId>org.postgresql</groupId>
            <artifactId>postgresql</artifactId>
            <version>9.4.1212.jre7</version>
        </dependency>
        <dependency>
            <groupId>org.liquibase.ext</groupId>
            <artifactId>liquibase-hibernate4</artifactId>
            <version>3.6</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>4.1.7.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-jpa</artifactId>
            <version>1.7.3.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>4.3.12.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>javax.validation</groupId>
            <artifactId>validation-api</artifactId>
            <version>2.0.1.Final</version>
        </dependency>
    </dependencies>   
</plugin> 

liquibase.properties:

url=jdbc:postgresql://localhost:5432/db
username=***
password=***
driver=org.postgresql.Driver
changeLogFile=src/main/resources/db/changelog/db.changelog-master.xml
outputChangeLogFile=src/main/resources/db/changelog/db.changelog-master.xml
referenceUrl=hibernate:spring:com.company.project?dialect=org.hibernate.dialect.PostgreSQLDialect&hibernate.physical_naming_strategy=org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy&hibernate.implicit_naming_strategy=org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy
referenceDefaultSchemaName=db

Пожалуйста, дайте мне знать, чего здесь не хватает.

1 Ответ

0 голосов
/ 30 сентября 2019

В соответствии doc необходимо указать:

- referenceUsername = Имя пользователя базовой базы данных.

- referencePassword = Пароль базовой базы данных.

- referenceUrl = Базовый URL базы данных.

referenceUrl - похоже на магию, вам необходимо указать правильный URL базы данных.

...