【问题标题】:Flyway Ant build not migratingFlyway Ant 构建未迁移
【发布时间】:2013-01-09 20:49:54
【问题描述】:

我正在使用下面给出的 xml 文件来执行 flyway 作为 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>

问候, 卡维莎

【问题讨论】:

  • 您是否尝试过命令行中的 ant deployDB?日志输出是什么?
  • 它给了我以下错误: Complete build sequence is [init-flyway, deployDB, ] init-flyway: parsing buildfile jar:file:/C:/Users/kavitha/Desktop/flyway/lib /flyway-ant-2.0.3.jar!/com/googlecode/flyway/ant/antlib.xml 与 URI = jar:file:/C:/Users/kavitha/Desktop/flyway/lib/flyway-ant-2.0。 3.jar!/com/googlecode/flyway/ant/antlib.xml 来自 zip 文件 deployDB: [antlib:com.googlecode.flyway.ant] 无法从资源 com/googlecode/flyway/ant/antlib.xml 加载定义.找不到。忽略异常 java.util.zip.ZipException:打开 zip 文件读取资源时出错

标签: java eclipse flyway


【解决方案1】:

两件事:

  • 不要设置 baseDir。它已被位置取代。
  • locations 是 flyway.classpath 下的路径

例子:

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

然后 Flyway 将在 /my/dir/db 中查找迁移

您已将类路径和位置设置为相同的值,这是不正确的。

【讨论】:

    猜你喜欢
    • 2019-01-16
    • 2016-03-17
    • 2013-09-07
    • 2016-02-05
    • 2017-12-23
    • 2014-09-16
    • 2019-12-27
    • 2012-03-04
    • 2020-04-29
    相关资源
    最近更新 更多