Hi,
I 'm trying to run Vacuum Database ext but I can’t. I know that it is ext for PostgreSQL (My DB is Oracle), but I only want to know how to create and add ext to LiquiBase, because I gonnna create my own for Oracle.
I have already done all the steps (LiquidBase 2.0.1b is installed)
- Add to classpath ext jar file.
- Create XML file with simple example from web.
- Create BAT file.
All files are in the same catalogue.
Content of files
#liquibase.properties
#liquibase.properties
driver: oracle.jdbc.OracleDriver
classpath: ojdbc14.jar;liquibase-vacuum-1.0.jar
url: jdbc:oracle:thin:@:1521:XE
username:
password:
#vacuum.xml
http://www.liquibase.org/xml/ns/dbchangelog"
xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-2.0.xsd
http://www.liquibase.org/xml/ns/dbchangelog-ext http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd">
#update.bat
@echo off
call liquibase --changeLogFile=vacuum.xml update
Massage during executing update.bat
org.xml.sax.SAXException: Unknown LiquiBase extension: vacuum. Are you missing a jar from your classpath?
at liquibase.parser.xml.XMLChangeLogSAXHandler.startElement(XMLChangeLogSAXHandler.java:218)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.emptyElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at liquibase.parser.xml.XMLChangeLogSAXParser.parse(XMLChangeLogSAXParser.java:80)
at liquibase.Liquibase.update(Liquibase.java:106)
at liquibase.integration.commandline.Main.doMigration(Main.java:656)
at liquibase.integration.commandline.Main.main(Main.java:103)
Migration Failed: Unknown LiquiBase extension: vacuum. Are you missing a jar from your classpath?
I have no idea why it doesn’t work.
Best Regards
dalt
hello.
I have the same problem, but i don’t use ext.
I added to the main project 3 classes:
liquibase.statement.core.ClassStatement,
liquibase.change.core.ClassChange &
liquibase.sqlgenerator.core.ClassGenerator,
and I also have that error.
I am able to duplicate your issue, I should have a beta2 release of 2.0 out tomorrow or the next day that will resolve it. Thanks for pointing it out. Too many variations on how classloading can work…
Nathan
I’m afraid that this isn’t resolved yet, because now with beta2 I get this (logLevel set to DEBUG):
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateDatabase: Missing dependency org/hibernate/cfg/Configuration
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateGenericDialect: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateDatabase: Missing dependency org/hibernate/cfg/Configuration
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateGenericDialect: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateDatabase: Missing dependency org/hibernate/cfg/Configuration
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateGenericDialect: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateDatabase: Missing dependency org/hibernate/cfg/Configuration
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateGenericDialect: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateDatabase: Missing dependency org/hibernate/cfg/Configuration
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateGenericDialect: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateDatabase: Missing dependency org/hibernate/cfg/Configuration
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateGenericDialect: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.snapshot.core.HibernateDatabaseSnapshotGenerator: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.ext.vacuum.VacuumChangeTest: Missing dependency liquibase/exception/JDBCException
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.snapshot.core.HibernateDatabaseSnapshotGenerator: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.ext.vacuum.VacuumChangeTest: Missing dependency liquibase/exception/JDBCException
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.snapshot.core.HibernateDatabaseSnapshotGenerator: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.ext.vacuum.VacuumChangeTest: Missing dependency liquibase/exception/JDBCException
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.snapshot.core.HibernateDatabaseSnapshotGenerator: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.ext.vacuum.VacuumChangeTest: Missing dependency liquibase/exception/JDBCException
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.snapshot.core.HibernateDatabaseSnapshotGenerator: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.ext.vacuum.VacuumChangeTest: Missing dependency liquibase/exception/JDBCException
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.snapshot.core.HibernateDatabaseSnapshotGenerator: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.ext.vacuum.VacuumChangeTest: Missing dependency liquibase/exception/JDBCException
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateDatabase: Missing dependency org/hibernate/cfg/Configuration
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateGenericDialect: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.snapshot.core.HibernateDatabaseSnapshotGenerator: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:50 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.ext.vacuum.VacuumChangeTest: Missing dependency liquibase/exception/JDBCException
2009-08-19 12:45:51 liquibase.logging.JavaUtilLogger info
INFO: Could not set remarks reporting on OracleDatabase: liquibase.database.JdbcConnection.setRemarksReporting(boolean)
2009-08-19 12:45:51 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateDatabase: Missing dependency org/hibernate/cfg/Configuration
2009-08-19 12:45:51 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.database.core.HibernateGenericDialect: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:51 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.snapshot.core.HibernateDatabaseSnapshotGenerator: Missing dependency org/hibernate/dialect/Dialect
2009-08-19 12:45:51 liquibase.logging.JavaUtilLogger warning
WARNING: Could not configure extension class liquibase.ext.vacuum.VacuumChangeTest: Missing dependency liquibase/exception/JDBCException
2009-08-19 12:45:51 liquibase.logging.JavaUtilLogger info
INFO: Lock Database
2009-08-19 12:45:51 liquibase.logging.JavaUtilLogger info
INFO: Successfully acquired change log lock
2009-08-19 12:45:51 liquibase.logging.JavaUtilLogger warning
WARNING: vacuum.xml is using schema version dbchangelog rather than version 2.0
2009-08-19 12:45:51 liquibase.logging.JavaUtilLogger info
INFO: Reading from DATABASECHANGELOG
2009-08-19 12:45:51 liquibase.logging.JavaUtilLogger info
INFO: Changeset vacuum.xml::1::nvoxland::(MD5Sum: 2:63c613a117132908344f2554bb6b4c17)
2009-08-19 12:45:51 liquibase.logging.JavaUtilLogger info
INFO: Release Database Lock
2009-08-19 12:45:51 liquibase.logging.JavaUtilLogger info
INFO: Successfully released change log lock
Migration Failed: Unknown Reason. For more information, use the --logLevel flag)
2009-08-19 12:45:51 liquibase.logging.JavaUtilLogger severe
SEVERE: Unknown Reason
liquibase.exception.MigrationFailedException: Migration failed for change set vacuum.xml::1::nvoxland:
Reason: java.lang.NullPointerException:
Caused By: null
at liquibase.changelog.ChangeSet.execute(ChangeSet.java:236)
at liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:26)
at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:39)
at liquibase.Liquibase.update(Liquibase.java:113)
at liquibase.integration.commandline.Main.doMigration(Main.java:661)
at liquibase.integration.commandline.Main.main(Main.java:106)
Caused by: java.lang.NullPointerException
at liquibase.sqlgenerator.SqlGeneratorFactory.generateSql(SqlGeneratorFactory.java:112)
at liquibase.executor.AbstractExecutor.applyVisitors(AbstractExecutor.java:21)
at liquibase.executor.core.jdbc.JdbcExecutor.access$000(JdbcExecutor.java:32)
at liquibase.executor.core.jdbc.JdbcExecutor$1ExecuteStatementCallback.doInStatement(JdbcExecutor.java:75)
at liquibase.executor.core.jdbc.JdbcExecutor.execute(JdbcExecutor.java:48)
at liquibase.executor.core.jdbc.JdbcExecutor.execute(JdbcExecutor.java:85)
at liquibase.database.AbstractDatabase.execute(AbstractDatabase.java:1257)
at liquibase.database.AbstractDatabase.executeStatements(AbstractDatabase.java:1244)
at liquibase.changelog.ChangeSet.execute(ChangeSet.java:212)
... 5 more
dalt
Thanks, I’ll look into it more.
Nathan