SpringLiquibase: includeAll within jar causes SetupException

Description

This is related to CORE-2164.

The attached project contains a single test which uses SpringLiquibase to execute changelogs inside a jar. One of those changelogs includesAll other changelogs inside the "extra" directory within the jar. This works in 3.0.0 but causes the following exception in 3.3.1:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Caused by: liquibase.exception.SetupException: liquibase.exception.SetupException: Could not find directory or directory was empty for includeAll 'META-INF/changelogs/extra/' at liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:247) at liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:211) at liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:25) ... 43 more Caused by: liquibase.exception.ChangeLogParseException: liquibase.exception.SetupException: Could not find directory or directory was empty for includeAll 'META-INF/changelogs/extra/' at liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:27) at liquibase.changelog.DatabaseChangeLog.include(DatabaseChangeLog.java:353) at liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:245) ... 45 more Caused by: liquibase.exception.SetupException: Could not find directory or directory was empty for includeAll 'META-INF/changelogs/extra/' at liquibase.changelog.DatabaseChangeLog.includeAll(DatabaseChangeLog.java:331) at liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:261) at liquibase.changelog.DatabaseChangeLog.load(DatabaseChangeLog.java:211) at liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:25) ... 47 more Caused by: liquibase.exception.SetupException: Could not find directory or directory was empty for includeAll 'META-INF/changelogs/extra/' at liquibase.changelog.DatabaseChangeLog.includeAll(DatabaseChangeLog.java:324) ... 50 more

The test can be executed with "mvn install".

Environment

Spring 3.0.6.RELEASE
Java(TM) SE Runtime Environment (build 1.6.0_45-b06)

Status

Assignee

Unassigned

Reporter

André Gustavo Rigon

Labels

None

Components

Fix versions

Affects versions

3.3.1

Priority

Major