Рефакторинг sqlFile в liquibase не может найти файл в classpath - PullRequest
0 голосов
/ 28 сентября 2011

В документации для пользовательского тега рефакторинга <sqlFile> сказано, что в файле будет найден путь к классам.Однако я не могу заставить его найти свой файл, несмотря на то, что он находится в пути к классам.

Элемент changeset:

<changeSet author="rebecca" id="9.1 - LoanIQ GoLive">
 <comment>No rollback script exists</comment>
 <sqlFile path="v9.1-loaniqgolive.sql"/>
</changeSet>

Задача ant:

<updateDatabase
    changeLogFile="@{changelog}"
    driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"
    url="jdbc:sqlserver://${database.host}:${database.port};databaseName=${database.name}"
    username="${database.user}"
    password="${database.password}"
    promptOnNonLocalDatabase="false"
    dropFirst="false"
    classpathref="liquibase.path"/>

Сборка сообщает, что путь ликвидазы:

[echo] The liquibase path = D:\Program Files\Jenkins\jobs\Deploy GMM\workspace\app\build\database;D:\Program Files\Jenkins\jobs\Deploy GMM\workspace\app\build\tools\liquibase\liquibase.jar;D:\Program Files\Jenkins\jobs\Deploy GMM\workspace\app\build\lib\sqljdbc.jar

Я подтвердил, что v9.1-loaniqgolive.sql определенно находится в пути (1-й элемент).

Пока я получаю этоошибка:

D:\Program Files\Jenkins\jobs\Deploy GMM\workspace\app\build\ant\functions\db.xml:56: liquibase.exception.ChangeLogParseException: Invalid Migration File: <sqlfile path=v9.1-loaniqgolive.sql> -Unable to read file
at liquibase.parser.core.xml.XMLChangeLogSAXParser.parse(XMLChangeLogSAXParser.java:132)

Мой конфиг выглядит нормально, но не работает.Как я могу решить эту проблему или отладить дальше?

1 Ответ

2 голосов
/ 29 сентября 2011

Одно быстрое предложение - запустить Ant с параметрами командной строки -verbose и -debug. Это приводит к большому количеству журналирования, но в целом помогает приблизить вас к источнику проблемы.

Я попытаюсь создать эквивалентную задачу Ant для одного из моих БД и отвечу любыми обновлениями.

...