环境
战争结构
ei-web-1.0.1-SNAPSHOT.war
|WEB-INF
|classes
|db
|migrations
|ei
|V5.7.0.sql
|V5.7.1.sql
|V5.7.2.sql
问题
当我尝试在JBoss启动时加载的MBean中执行Flyway迁移时,我得到以下堆栈跟踪。
java.io.FileNotFoundException:URL [vfs:/ C:/jboss-6.1.0.Final/server/ei/deploy/ei-web-1.0.1-SNAPSHOT.war/WEB-INF/classes/db / migrations / ei /]无法解析为绝对文件路径,因为它不驻留在文件系统中:vfs:/ C:/jboss-6.1.0.Final/server/ei/deploy/ei-web-1.0.1 -SNAPSHOT.war / WEB-INF /类/分贝/迁移/ EI /
线索信息
请参阅com.googlecode.flyway.core.migration.sql.SqlMigrationResolver (L.99)
final String searchPattern = "**/" + sqlMigrationPrefix + "?*" + sqlMigrationSuffix;
Resource[] resources = new PathMatchingResourcePatternResolver(classLoader)
.getResources("classpath:" + searchRoot + searchPattern);
在我的例子中,资源返回一个空数组。