0
我想在我的Ant项目中使用Flyway运行DDL脚本。我设法配置了类路径,以便Flyway能够看到迁移脚本。当我跑飞路:迁移任务,我得到这个异常:Flyway Ant尝试打开.sql文件作为zip,失败并出现ZipException
Unable to obtain resource from (...)/src/ddl/V1__create_tables_logging.sql: java.util.zip.ZipException: error in opening zip file
[flyway:migrate] Unable to obtain resource from (...)/src/ddl/V1__create_tables_logging.sql:
[flyway:migrate] java.util.zip.ZipException: error in opening zip file
有在最后一个建议:
[flyway:migrate] Possible solution: run the Ant javac and copy tasks first so Flyway can find the migrations
但我的项目不是一个Java应用程序,我没有任何Java源代码用javac编译。 Flyway是否需要将迁移脚本包装在jar中?难道它只是用SQL语句运行一些文本文件吗?
该文档具有误导性,它表示迁移应该在类路径中,但只有在您事先将它们编译为jars时才有效。作为我的工作是使用flyway.locations属性,并在文件显示的示例之一中预先加上“filesystem:”路径。 – lukfi