diff --git a/pdf-umbenenner-bootstrap/src/main/java/de/gecheckt/pdf/umbenenner/bootstrap/BootstrapRunner.java b/pdf-umbenenner-bootstrap/src/main/java/de/gecheckt/pdf/umbenenner/bootstrap/BootstrapRunner.java index 1028eb7..2f6fc74 100644 --- a/pdf-umbenenner-bootstrap/src/main/java/de/gecheckt/pdf/umbenenner/bootstrap/BootstrapRunner.java +++ b/pdf-umbenenner-bootstrap/src/main/java/de/gecheckt/pdf/umbenenner/bootstrap/BootstrapRunner.java @@ -1884,7 +1884,13 @@ public class BootstrapRunner { Objects.requireNonNull(configFilePath, CONFIG_FILE_NOT_NULL); Objects.requireNonNull(query, "query must not be null"); try { - migrateConfigurationIfNeeded(configFilePath); + // Migration nur durchführen, wenn der Anwendungskontext noch nicht steht. + // Steht er bereits, wurde die Migration in initializeApplicationRunContext + // schon einmal abgeschlossen; ein erneuter Lese-/Schreibversuch auf der + // Konfigurationsdatei kollidiert mit einem aktiven Scheduler-Lock. + if (guiApplicationRunContext.isEmpty()) { + migrateConfigurationIfNeeded(configFilePath); + } StartConfiguration config = loadAndValidateConfiguration(configFilePath); initializeSchema(config); String jdbcUrl = resolveActiveJdbcUrl(config);