0

以下のxmlファイルを使用して、フライウェイをantタスクとして実行しています。「Run as ant」オプションを使用して、Eclipseでantファイルを実行しています。ビルドが成功したことを示していますが、フライウェイの移行は行われていません。

確認して、修正が必要な場合はお知らせください。

<path id="flyway.lib.path">
    <fileset dir="${flyway.lib.dir}" includes="**/*.jar"/>
</path>

<path id="flyway.classpath">
    <fileset dir="${sql.dir.emlogis}" includes="**/*.sql"/>
    <fileset dir="${sql.dir.generator}" includes="**/*.sql"/>
    <fileset dir="${sql.dir.pgf}" includes="**/*.sql"/>
</path>



<target name="init-flyway">
    <taskdef uri="antlib:com.googlecode.flyway.ant"
                resource="com/googlecode/flyway/ant/antlib.xml"
                classpathref="flyway.lib.path"/>
  <property name="flyway.driver" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/>
  <property name="flyway.url" value="jdbc:sqlserver://localhost:1433;databaseName=ElmGenerator"/>
  <property name="flyway.user" value="sa"/>
  <property name="flyway.password" value="EmLogis123"/>
  <property name="flyway.baseDir" value="${sql.dir.generator}"/>
  <property name="flyway.classpath" value="${sql.dir.generator}"/>
  <property name="flyway.table" value="schema_history"/>
 <property name="flyway.locations" value="${sql.dir.emlogis},${sql.dir.generator}"/>
    <property name="flyway.placeholders.custName" value="Maple"/>
    <property name="flyway.placeholderPrefix" value="$("/>
    <property name="flyway.placeholderSuffix" value=")"/>
    <property name="flyway.outOfOrder" value="false"/>
    <property name="flyway.validateOnMigrate" value="true"/>
    <property name="flyway.cleanOnValidationError" value="false"/>
    <property name="flyway.initOnMigrate" value="false"/>
</target>

<target name="deployDB" depends="init-flyway">
    <flyway:migrate>
        <locations>
            <location path="${sql.dir.emlogis}"/>
            <location path="${sql.dir.generator}"/>
        </locations>
        <placeholders>
            <placeholder name="custName" value="Elm"/>
        </placeholders>
    </flyway:migrate>
</target>

よろしく、 カビサ

4

1 に答える 1

0

2つのこと:

  • baseDirを設定しないでください。それは場所によって監視されています。
  • 場所はflyway.classpathの下のパスです

例:

flyway.classpath=/my/dir/**.*.sql
flyway.locations=db

次に、Flywayは/ my / dir/dbで移行を探します

クラスパスと場所の両方を同じ値に設定しましたが、これは正しくありません。

于 2013-01-09T12:49:54.213 に答える