Liquibaseでプロジェクトをアップグレードして、プロジェクトを少し変更しようとしています。そのJavaEEプロジェクト。したがって、liquibase-maven-pluginを使用しています。
これまでのところ、pom.xmlにあります:
<plugin>
<groupId>org.liquibase</groupId>
<artifactId>liquibase-maven-plugin</artifactId>
<version>2.0.5</version>
<configuration>
<propertyFileWillOverride>true</propertyFileWillOverride>
<propertyFile>src/main/resources/liquibase.properties</propertyFile>
<changeLogFile>src/main/resources/changelogs/changelog.xml</changeLogFile>
</configuration>
<executions>
<execution>
<!-- Another Error: plugin execution not covered by lifecycle configuration..-->
<!-- <phase>process-resources</phase> <goals> <goal>update</goal> </goals> -->
</execution>
</executions>
</plugin>
すでにドライバーが含まれています:
<dependency>
<groupId>postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.1-901-1.jdbc4</version>
</dependency>
liquibase.propertiesファイルには、URL、ユーザー名、パスワード、changeLogFile-Path、およびドライバーが含まれています。
#liquibase.properties
driver: org.postgresql.Driver
ただし、ドライバーのクラスパスはありません。クラスパスも必要ですか?
changelog.xmlには、最初にliquibaseをテストするためだけに、テーブルを作成する単純なチェンジセットがあります。
しかし、私がプロジェクトを実行するとき、私はここまで来ません
mvn liquibase:update
このエラーが発生しました:
[エラー]プロジェクトでゴールorg.liquibase:liquibase-maven-plugin:2.0.5:update(default-cli)を実行できませんでしたプロジェクト:Liquibaseのセットアップまたは実行中にエラーが発生しました:java.lang.RuntimeException:データベースドライバーが見つかりません:org .postgresql.Driver
要点がわかりません。このドライバーは、プロジェクトで以前から使用されています。では、なぜliquibaseはそれを見つけられないのでしょうか?
編集
ドライバータグを追加してpom.xmlの構成を編集すると、次のように機能します。
<configuration>
<propertyFileWillOverride>true</propertyFileWillOverride>
<propertyFile>src/main/resources/liquibase.properties</propertyFile>
<changeLogFile>src/main/resources/changelogs/changelog.xml</changeLogFile>
<driver>org.postgresql.Driver</driver>
</configuration>
その前に、私のドライバーはliquibase.propertiesで指定されていましたが、これも実際に機能するはずです。
ドライバーをプロパティファイルに保持したい場合、誰かがliquibase.propertiesファイルがどのように見えるかを教えてくれるかもしれません。