@@ -163,11 +163,7 @@ void nativeImageConfiguration(
163163 liquibase .executor .ExecutorService .class .getName (),
164164 liquibase .change .ColumnConfig .class .getName (),
165165 liquibase .change .AddColumnConfig .class .getName (),
166- liquibase .change .core .LoadDataColumnConfig .class .getName (),
167- liquibase .sql .visitor .PrependSqlVisitor .class .getName (),
168- liquibase .sql .visitor .ReplaceSqlVisitor .class .getName (),
169- liquibase .sql .visitor .AppendSqlVisitor .class .getName (),
170- liquibase .sql .visitor .RegExpReplaceSqlVisitor .class .getName ())
166+ liquibase .change .core .LoadDataColumnConfig .class .getName ())
171167 .reason (getClass ().getName ())
172168 .constructors ().methods ().fields ().build ());
173169
@@ -196,6 +192,17 @@ void nativeImageConfiguration(
196192 .reason (getClass ().getName ())
197193 .constructors ().methods ().fields ().build ());
198194
195+ // the subclasses of AbstractSqlVisitor are also accessed reflectively
196+ reflective .produce (ReflectiveClassBuildItem .builder (
197+ liquibase .sql .visitor .AbstractSqlVisitor .class .getName (),
198+ liquibase .sql .visitor .AppendSqlIfNotPresentVisitor .class .getName (),
199+ liquibase .sql .visitor .AppendSqlVisitor .class .getName (),
200+ liquibase .sql .visitor .PrependSqlVisitor .class .getName (),
201+ liquibase .sql .visitor .RegExpReplaceSqlVisitor .class .getName (),
202+ liquibase .sql .visitor .ReplaceSqlVisitor .class .getName ())
203+ .reason (getClass ().getName ())
204+ .constructors ().methods ().fields ().build ());
205+
199206 // register all liquibase.datatype.core.* data types
200207 Set <String > classesAnnotatedWithDataTypeInfo = combinedIndex .getIndex ().getAnnotations (DATA_TYPE_INFO_ANNOTATION )
201208 .stream ()
0 commit comments