2

既存のdb-schemaを使用したjavaeeプロジェクトがあります。今、私はデータベースにliquibaseを使用したいと思います。

そこで、コマンドラインで既存のスキーマから変更ログを生成しました。を使用して既存のデータベースに対してその変更ログを実行すると、mvn liquibase:changeLogSync問題なくliquibaseを操作できるようになります。

私の質問はchangeLogSync、プロジェクト内でコマンドを実行せずに使用できますか?チェンジセットで新しいファイルを使用するようなFe:

<include file="changelogs/db.changelog1.xml"/>

changeLogSyncAntのこのような、同様の方法はありますか?

<changeLogSync
        changeLogFile="${db.changelog.file}"
        driver="${database.driver}"
        url="${database.url}"
        username="${database.username}"
        password="${database.password}"
        classpathref="classpath"
        >
</changeLogSync>
4

1 に答える 1

2

もちろん。これが私たちのものです:

<plugin>
  <groupId>org.liquibase</groupId>
  <artifactId>liquibase-maven-plugin</artifactId>
  <version>2.0.5</version>
  <dependencies>
     <dependency>
        <groupId>com.oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>${ojdbc.version}</version>
     </dependency>
  </dependencies>
  <configuration>
     <changeLogFile>${db.changelog.file}</changeLogFile>
     <driver>${database.driver}</driver>
     <url>${database.url}</url>
     <username>${database.username}</username>
     <password>${database.password}</password>
  </configuration>
  <executions>
     <execution>
        <phase>process-resources</phase>
        <goals>
           <goal>changeLogSync</goal>
        </goals>
     </execution>
  </executions>
</plugin>

もちろん、独自のDBフレーバーとビルドフェーズの設定に合わせて調整してください。

于 2013-01-30T22:52:19.570 に答える