diff --git a/dbmigrate/src/main/java/se/fortnox/reactivewizard/dbmigrate/LiquibaseMigrate.java b/dbmigrate/src/main/java/se/fortnox/reactivewizard/dbmigrate/LiquibaseMigrate.java
index ce3cb03f..5c31a170 100644
--- a/dbmigrate/src/main/java/se/fortnox/reactivewizard/dbmigrate/LiquibaseMigrate.java
+++ b/dbmigrate/src/main/java/se/fortnox/reactivewizard/dbmigrate/LiquibaseMigrate.java
@@ -15,12 +15,12 @@
import liquibase.ext.TimeoutLockService;
import liquibase.lockservice.LockServiceFactory;
import liquibase.resource.ClassLoaderResourceAccessor;
-import liquibase.resource.InputStreamList;
+import liquibase.resource.Resource;
+import liquibase.resource.URIResource;
import se.fortnox.reactivewizard.db.DbDriver;
import javax.inject.Inject;
import java.io.IOException;
-import java.io.InputStream;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
@@ -56,9 +56,7 @@ public LiquibaseMigrate(LiquibaseConfig liquibaseConfig) throws LiquibaseExcepti
while (resources.hasMoreElements()) {
URL url = resources.nextElement();
String file = url.toExternalForm();
- int jarFileSep = file.lastIndexOf('!');
- String loggedFileName = file.substring(jarFileSep + 1);
- Liquibase liquibase = new Liquibase(loggedFileName, new UrlAwareClassLoaderResourceAccessor(file), conn);
+ Liquibase liquibase = new Liquibase(file, new UrlAwareClassLoaderResourceAccessor(file), conn);
liquibase.getDatabase().setDefaultSchemaName(liquibaseConfig.getSchema());
liquibaseList.add(liquibase);
@@ -152,7 +150,7 @@ void exit() {
System.exit(0);
}
- class UrlAwareClassLoaderResourceAccessor extends ClassLoaderResourceAccessor {
+ static class UrlAwareClassLoaderResourceAccessor extends ClassLoaderResourceAccessor {
private final String realFileName;
public UrlAwareClassLoaderResourceAccessor(String realFileName) {
@@ -160,26 +158,22 @@ public UrlAwareClassLoaderResourceAccessor(String realFileName) {
}
@Override
- public InputStreamList openStreams(String relativeTo, String path) throws IOException {
+ public Resource get(String path) throws IOException {
if (realFileName.endsWith(path)) {
path = realFileName;
}
if (path.startsWith("file:") || path.startsWith("jar:file:")) {
URL url = new URL(path);
- InputStream resourceAsStream = url.openStream();
- InputStreamList inputStreamList = new InputStreamList();
URI uri;
try {
uri = url.toURI();
} catch (URISyntaxException e) {
throw new RuntimeException(e);
}
- inputStreamList.add(uri, resourceAsStream);
-
- return inputStreamList;
+ return new URIResource(path, uri);
}
- return super.openStreams(relativeTo, path);
+ return super.get(path);
}
}
}
diff --git a/pom.xml b/pom.xml
index 669c443e..07594e96 100644
--- a/pom.xml
+++ b/pom.xml
@@ -105,7 +105,7 @@
3.2.0
3.3.0
10.4
- 4.16.1
+ 4.17.2
4.1.0
1
4.2.12