My requirement is I want to diff two database then I want t o generate a diff sql.Note I want to do it through java only. I am new to Liquibase.I have found a java api called CommandLineUtils using which I am able to generate changeLog of a new database. When I am executing method doDiffToChangeLog then my changeLog xml is empty. Can you please tell me where I am doing wrong.
here is my java code
Database database=liqui.createDatabaseObject(OracleDriver.class.getClassLoader(), “jdbc:oracle:thin:@localhost:1521:XE”, “archive_pmd”, “archive_pmd”, “oracle.jdbc.driver.OracleDriver”, “archive_pmd”, null, null);
liqui.doGenerateChangeLog(“test.xml”, database, “archive_pmd”, null, null, null, null);
Database database2=liqui.createDatabaseObject(OracleDriver.class.getClassLoader(), “jdbc:oracle:thin:@localhost:1521:XE”, “archive_dbs”, “archive_dbs”, “oracle.jdbc.driver.OracleDriver”, “archive_pmd”, null, null);
liqui.doDiffToChangeLog(“chageLog.xml”, database2, database);
here is my generated test.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
===
here is my changeLog.xml(diff one)
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
Note archive_dbs does not contain any table.Why liquibase didint showed that table in archive_pmd is missing in archive_dbs?