ChangeLogParseException - running Liquibase through Java

Hi, i have a lot of xml files to convert to sql, so i decided to do it with java.

that’s my code:


  1.                 Class.forName(driver);
  2.                 Connection connection;
  3.                 connection = DriverManager.getConnection(url, username, password);
  4.                 JdbcConnection jdbcConnection = new JdbcConnection(connection);
  5.                 DB2Database databaseConnection = new DB2Database();
  6.                 databaseConnection.setConnection(jdbcConnection);
  7.                 Liquibase liquibase =
  8.                         new Liquibase(path + xmlfiles[i].getName(), new ClassLoaderResourceAccessor(),
  9.                                 databaseConnection);
  10.                 Writer test = new FileWriter(path + xmlfiles[i].getName());
  11.                 liquibase.update(null, test);
  12.                 test.close();

before, i'm going through a for-loop to get all xml files from a directory and store them in a file array

i’m running this as a maven-plugin


that’s the exception:


  1. [ERROR] does not exist
  2. liquibase.exception.ChangeLogParseException: x:/tmp/database/src/main/sql/migration/13.1/file.xml does not exist
  3.         at liquibase.parser.core.xml.XMLChangeLogSAXParser.parse(XMLChangeLogSAXParser.java:93)
  4.         at liquibase.Liquibase.update(Liquibase.java:107)
  5.         at liquibase.Liquibase.update(Liquibase.java:146)
  6.         at com.example..ReleaseChangelogs.execute(ReleaseChangelogs.java:109)
  7.         at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
  8.         at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
  9.         at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
  10.         at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
  11.         at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
  12.         at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
  13.         at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
  14.         at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
  15.         at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
  16.         at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
  17.         at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
  18.         at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
  19.         at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
  20.         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  21.         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  22.         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  23.         at java.lang.reflect.Method.invoke(Method.java:597)
  24.         at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
  25.         at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
  26.         at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
  27.         at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
but i'm sure the file exists..


thanks for any help

i made two mistakes there:

  1. <span));

but still same exception.


and i forgot to delete path and filename in the exception (line 3), could someone pls do that?


thanks!