如何使用类路径通过Liberty Profile上的application.properties引用flyway.locations:

时间:2017-06-21 18:58:29

标签: java spring spring-boot websphere-liberty flyway

我使用flyway在Liberty上运行SpringBoot应用程序并使用文件系统:在本地引用db / migration文件。对于我们部署的环境,我会首选将文件保留在生成的war中,而不是保存在服务器文件夹中并直接指定。当我尝试使用classpath:db / migration时,我得到以下内容:

2017-06-21 13:50:20.494  INFO 2600 --- [ecutor-thread-3] o.f.core.internal.util.VersionPrinter    : Flyway 4.2.0 by Boxfuse
2017-06-21 13:50:21.521  INFO 2600 --- [ecutor-thread-3] o.f.c.i.dbsupport.DbSupportFactory       : Database: jdbc:db2://devserver:12345/dev_database(DB2/AIX64 10.5)
2017-06-21 13:50:21.724  WARN 2600 --- [ecutor-thread-3] o.f.c.i.u.s.classpath.ClassPathScanner   : Unable to resolve location classpath:db/migration (ClassLoader: com.ibm.ws.classloading.internal.ThreadContextClassLoader@bdac658) On WebSphere an empty file named flyway.location must be present on the classpath location for WebSphere to find it!
2017-06-21 13:50:21.725  WARN 2600 --- [ecutor-thread-3] o.f.c.i.u.s.classpath.ClassPathScanner   : Unable to resolve location classpath:db/migration
2017-06-21 13:50:22.170  WARN 2600 --- [ecutor-thread-3] o.f.c.i.u.s.classpath.ClassPathScanner   : Unable to resolve location classpath:db/migration
2017-06-21 13:50:22.171  WARN 2600 --- [ecutor-thread-3] o.f.c.i.u.s.classpath.ClassPathScanner   : Unable to resolve location classpath:db/migration
2017-06-21 13:50:22.176  WARN 2600 --- [ecutor-thread-3] o.f.c.i.u.s.classpath.ClassPathScanner   : Unable to resolve location classpath:db/migration
2017-06-21 13:50:22.180  WARN 2600 --- [ecutor-thread-3] o.f.c.i.u.s.classpath.ClassPathScanner   : Unable to resolve location classpath:db/migration
2017-06-21 13:50:22.429  INFO 2600 --- [ecutor-thread-3] o.f.core.internal.command.DbValidate     : Successfully validated 2 migrations (execution time 00:00.334s)
2017-06-21 13:50:23.270  INFO 2600 --- [ecutor-thread-3] o.f.core.internal.command.DbMigrate      : Current version of schema "DEVSCHEMA": 2
2017-06-21 13:50:23.271  WARN 2600 --- [ecutor-thread-3] o.f.core.internal.command.DbMigrate      : Schema "DEVSCHEMA" has a version (2) that is newer than the latest available migration (1) !
2017-06-21 13:50:23.307  INFO 2600 --- [ecutor-thread-3] o.f.core.internal.command.DbMigrate      : Schema "DEVSCHEMA" is up to date. No migration necessary.

将应用程序连接到Liberty Profile上的db / migration文件夹的正确方法是什么?我在我的Liberty文件夹中推了一个空的Flyway.Location文件但没有用。

这是Liberty 17.0.0.1,Spring-Boot 1.5.2和Flyway-Core 4.2.0。

1 个答案:

答案 0 :(得分:1)

解决方案是在日志中给出的,你需要在db / flyway中添加一个空文件flyway.location