Всем привет, не так давно решил освоить инструмент для миграции данных - liquibase.
При компиляции кода(приложу ниже) возникает такая ошибка:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'liquibase' defined in class path resource [org/springframework/boot/autoconfigure/liquibase/LiquibaseAutoConfiguration$LiquibaseConfiguration.class]: Invocation of init method failed; nested exception is liquibase.exception.ChangeLogParseException: Error parsing classpath:db/changelog/liquibase-changelog.yml
Структура:
![63637dd298ffc232897085.png](https://habrastorage.org/webt/63/63/7d/63637dd298ffc232897085.png)
Есть модель работника:
@Entity // This tells Hibernate to make a table out of this class
@Table(name = "name")
public class Employees {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private Integer id;
@Column
private String name;
@Column
private String lastname;
@Column
private String secondname;
@Column
private String Work;
@Column
private String sex;
@Column
private String dateofbirth;
@Column
private String number;
Так же есть changelog.yml:
databaseChangeLog:
- include:
file: db/changelog/insertdata.xml
Employee.xml:
<?xml version="1.0" encoding="UTF-8"?>
<databaseChangeLog
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
<changeSet id="01" author="Realssocks">
<createTable tableName="employees"
remarks="A table to contain all employees">
<column name="id" type="int" autoIncrement="true">
<constraints nullable="false" unique="true" primaryKey="true"/>
</column>
<column name="name" type="varchar(255)">
<constraints nullable="false" />
</column>
<column name="secondname" type="int">
<constraints nullable="false"/>
</column>
<column name="lastname" type="int">
<constraints nullable="false"/>
</column>
<column name="sex" type="int">
<constraints nullable="false"/>
</column>
<column name="Work" type="int">
<constraints nullable="false"/>
</column>
<column name="dateofbirth" type="int">
<constraints nullable="false"/>
</column>
<column name="number" type="int">
<constraints nullable="false"/>
</column>
</createTable>
</changeSet>
</databaseChangeLog>
insertdata.xml:
<?xml version="1.0" encoding="UTF-8"?>
<databaseChangeLog
xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
<changeSet id="03" author="Realsocks">
<comment>Inserting Employee</comment>
<insert tableName="employee">
<column name="id" valueNumeric="1"/>
<column name="name" value="Kirill"/>
<column name="secondname" value="Zheltov"/>
<column name="lastname" value="Romanovich"/>
<column name="sex" value="Male"/>
<column name="Work" value="Work"/>
<column name="dateofbirth" value="17/05/2003"/>
<column name="number" value="0000000"/>
</insert>
<insert tableName="employee">
<column name="id" valueNumeric="2"/>
<column name="name" value="Kirill1"/>
<column name="secondname" value="Zheltov1"/>
<column name="lastname" value="Romanovich1"/>
<column name="sex" value="Male1"/>
<column name="Work" value="Work1"/>
<column name="dateofbirth" value="17/05/20031"/>
<column name="number" value="00000001"/>
</insert>
<insert tableName="employee">
<column name="id" valueNumeric="3"/>
<column name="name" value="Kirill2"/>
<column name="secondname" value="Zheltov2"/>
<column name="lastname" value="Romanovich2"/>
<column name="sex" value="Male2"/>
<column name="Work" value="Work2"/>
<column name="dateofbirth" value="17/05/20032"/>
<column name="number" value="00000002"/>
</insert>
<insert tableName="employee">
<column name="id" valueNumeric="4"/>
<column name="name" value="Kirill3"/>
<column name="secondname" value="Zheltov3"/>
<column name="lastname" value="Romanovich3"/>
<column name="sex" value="Male3"/>
<column name="Work" value="Work3"/>
<column name="dateofbirth" value="17/05/20033"/>
<column name="number" value="00000003"/>
</insert>
<insert tableName="employee">
<column name="id" valueNumeric="5"/>
<column name="name" value="Kirill4"/>
<column name="secondname" value="Zheltov4"/>
<column name="lastname" value="Romanovich4"/>
<column name="sex" value="Male4"/>
<column name="Work" value="Work4"/>
<column name="dateofbirth" value="17/05/20034"/>
<column name="number" value="00000004"/>
</insert>
</changeSet>
</databaseChangeLog>
Application.properties:
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect
spring.jpa.hibernate.show-sql=true
spring.datasource.url=jdbc:postgresql://localhost:5432/postgres
spring.datasource.username=username
spring.datasource.password=password
spring.liquibase.change-log=classpath:db/changelog/liquibase-changelog.yml
server.port=8081
spring.liquibase.enabled=true
spring.jpa.hibernate.ddl-auto=none
spring.h2.console.enabled=true
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.5</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>demo</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>19</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.liquibase</groupId>
<artifactId>liquibase-core</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.liquibase</groupId>
<artifactId>liquibase-maven-plugin</artifactId>
<configuration>
<propertyFile>src/main/resources/liquibase.properties</propertyFile>
</configuration>
</plugin>
</plugins>
</build>
</project>
проект делал по примеру видео-урока с ютуба, видел пару похожих вопросов, но их решения к сожалению не помогли, буду рад любой помощи!