Environmentкаталог пролетный путь SQL не найден во время миграции внутри войны
- Jboss 6
- пролетного пути 1,5
- весна ядро 2.5.6
структура войны
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
Проблема
Когда я пытаюсь выполнить пролетного пути миграции внутри MBean загружаются при запуске моего JBoss я получаю следующую трассировку стека.
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/классы/DB// миграций EI/
Ключи
- пролетного пути базовая папка является дБ/м igrations/е
- пролетного пути начальная версия 5.7.0
- При запуске в автономном образом, миграции в порядке
- ИМХО, проблема является следствием неудачного сканирования каталога CLASSPATH.
См com.googlecode.flyway.core.migration.sql.SqlMigrationResolver (L.99)
final String searchPattern = "**/" + sqlMigrationPrefix + "?*" + sqlMigrationSuffix;
Resource[] resources = new PathMatchingResourcePatternResolver(classLoader)
.getResources("classpath:" + searchRoot + searchPattern);
В моем случае, ресурсы возвращает пустой массив.