#java #eclipse #spring-boot #liquibase
#java #eclipse #весенняя загрузка #liquibase
Вопрос:
Я запускаю приложение spring boot внутри eclipse:
@SpringBootApplication
public class StatBasketServerApplication {
public static void main(String[] args) {
SpringApplication.run(StatBasketServerApplication.class, args);
}
}
файл свойств:
spring.jpa.hibernate.ddl-auto=none
spring.h2.console.enabled=true
spring.datasource.url= jdbc:postgresql://localhost:5432/
spring.datasource.username=postgres
spring.datasource.password=postgres
spring.jpa.hibernate.ddl-auto=create-drop
При запуске приложения изменение liquibase не выполняется.
Нужно ли мне что-то делать внутри сборки gradle? Если я посмотрю на консоль, я ничего не вижу о liquibase.
Список изменений находится внутри
resouces/db/changelog.xml
Обновить
Это мой файл сборки
buildscript {
ext {
springBootVersion = '1.4.1.RELEASE'
}
repositories {
mavenCentral()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
}
}
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'spring-boot'
jar {
baseName = 'statBasketServer'
version = '0.0.1-SNAPSHOT'
}
sourceCompatibility = 1.8
targetCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
compile('org.springframework.boot:spring-boot-starter')
compile("org.springframework.boot:spring-boot-starter-web")
compile("org.springframework.boot:spring-boot-starter-data-jpa")
compile("org.springframework.boot:spring-boot-starter-data-solr")
compile("org.springframework.boot:spring-boot-starter-hateoas")
compile("org.json:json:20141113")
compile("org.postgresql:postgresql:9.4-1201-jdbc4")
compile("com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.6.1")
compile("org.codehaus.woodstox:woodstox-core-asl:4.4.1")
compile group: 'org.postgresql', name: 'postgresql', version: '9.4.1211.jre7'
testCompile("org.springframework.boot:spring-boot-starter-test")
testCompile("com.jayway.jsonpath:json-path-assert:0.8.1")
}
Комментарии:
1. Я думаю, вы можете уточнить больше, мы не можем увидеть список изменений, если вы упомянете его там таким образом.
2. Но это не проблема набора изменений, тот же набор изменений выполняется в других приложениях, это начальная проблема. При запуске springboot в консоли не отображается сообщение о liquibase.
Ответ №1:
- Вам нужно добавить
org.liquibase:liquibase-core
в свой путь к классу - По умолчанию он будет считываться
db/changelog/db.changelog-master.yaml
как список изменений по умолчанию, или вы можете настроить его черезliquibase.change-log
inapplication.properties
, spring boot также поддерживает сценарии liquibase в формате xml, json.
Вот пример, предоставленный spring boot, вы можете сослаться на него, один момент — этот пример использует maven в качестве инструмента сборки.
Комментарии:
1. первый момент: я думаю, что он уже включен в зависимости от gradle или нет?
2. @mautrok может быть, вам нужно настроить его самостоятельно,
3. Хуан, да, я прочитал это, чтобы получить помощь, но сборка находится в maven, и у меня есть gradle. Я попытаюсь проверить, отсутствует ли liquibase в пути к классу
4. Проще добавить его
compile('org.liquibase:liquibase-core')
5. да, извините, в тот момент, когда я пишу сборку, я сразу увидел свою ошибку, и все же я не знаю, работает ли это, я пытаюсь