Я хочу создать XML файл журнала изменений в Liquibase с помощью Java, в котором хранится информация о двух различиях баз данных.
Мой код:
Database database=CommandLineUtils.createDatabaseObject(MySQLConnection.class.getClassLoader(),
"jdbc:mysql://localhost:3306/test", "root", "admin", "com.mysql.jdbc.Driver", "", null,false,false,null,null,null,null);
Database database2=CommandLineUtils.createDatabaseObject(MySQLConnection.class.getClassLoader(),
"jdbc:mysql://localhost:3306/pizzashop", "root", "admin", "com.mysql.jdbc.Driver", "", null,false,false,null,null,null,null);
CommandLineUtils.doDiffToChangeLog("changelog.xml", database2, database,new DiffOutputControl(),null,null);
Но он создает пустой файл changelog.xml
.
Я решил свой вопрос. Используйте версию Liquibase 2.0.3.
Код:
Database database=CommandLineUtils.createDatabaseObject(MySQLConnection.class.getClassLoader(),
"jdbc:mysql://localhost:3306/lportal", "root", "admin", "com.mysql.jdbc.Driver",
null,null,null);
Database database2=CommandLineUtils.createDatabaseObject(MySQLConnection.class.getClassLoader(),
"jdbc:mysql://localhost:3306/llportal", "root", "admin", "com.mysql.jdbc.Driver",
null,null,null);
CommandLineUtils.doDiffToChangeLog("changeLogFile.xml",database, database2)
;