2013-07-10 3 views
1

Я просто не могу получить Java-миграции, которые можно распознать и выполнить с помощью инструмента командной строки flyway.Перенос миграции Flyway, не работающий в инструменте командной строки

То, что я сделал до сих пор:

  1. Скачать и извлечь пролетный путь (версия для командной строки)
  2. сконфигурированных flyway.properties в каталоге конф, установив следующие свойства
    • flyway.driver, пролетный путь. URL, flyway.user, flyway.password
  3. драйвер
  4. Добавлен оракул JDBC в каталог банок
  5. Выполнено flyway.cmd init => Работало. Создана таблица истории.
  6. Добавлен файл SQL в каталог ./sql. V1_1__Some_sql.sql
  7. Выполнено flyway.cmd migrate = >работано. DB был изменен

    FINE SO FAR. Работает так, как ожидалось. Итог проблемы:

  8. Создал класс Java в моей среде IDE.

    public class V1_2__Another_test implements JdbcMigration 
    { 
    
        public void migrate(Connection connection) throws Exception 
        { 
    
         PreparedStatement statement = connection.prepareStatement("INSERT INTO flyway_sample (name) VALUES ('My Name')"); 
    
         try { 
         statement.execute(); 
         } finally { 
         statement.close(); 
         } 
        } 
    } 
    
  9. Составитель класс, поместите его в банку с именем V1_2__Another_test.jar

  10. Размещенные банку в SQL или банки и пытались запустить flyway.cmd мигрировать. => Flyway игнорирует это.
  11. Пытался положить файл .class в банки или sql => Flyway также игнорирует его.
  12. Я использую Flyway 2.1.1.

Что мне не хватает?

ответ

3

Что вы делали, звучит отлично. Обязательно добавьте пакет, в котором находится ваш класс, к flyway.locations, и вам должно быть хорошо идти.

+1

Благодарим вас за то, что дала packagenames для flyway.locations - недостающая часть. Теперь это работает. – magicroomy

+0

Я упомянул местоположение. все равно он не работает. 'flyway.jarDirs = D: /Software/dbmigrationtool/flyway-4.0/jars flyway.locations = classpath: db.migration, файловая система: D:/Рабочая область/Коммерческая/коммерческая/CCPlatform/src/main/database/oracle/update_tanant ' – iMBMT

Смежные вопросы