2017-10-06 118 views
1

當通過詹金斯運行飛行用我得到的控制檯輸出以下錯誤:運行遷飛遷移與詹金斯和搖籃 - 無法解析位置的類路徑:DB /遷移

Unable to resolve location classpath:db/migration 

我的項目源結構如下所示:

Project1 
|--WEB-INF 
    |--src 
     |--java source 
    |--flywaysrc 
     |-- flyway source 

我的build.gradle對遷徙路線和java單獨sourceSets:

sourceSets { 
    main { 
     java {   
      srcDir 'WEB-INF/src'   
     } 
    } 
    flyway { 
     java { 
      srcDir 'WEB-INF/flywaysrc' 
      output.classesDir='bin'   
     } 
    } 
} 

它還包含了飛路,其中位置陣列設置如下條目:

flyway { 
    ...other configuration params... 
    ArrayList<String> locationsArray = new ArrayList<String>(); 
    locationsArray.add("classpath:db/migration"); 
    locationsArray.add("filesystem:/path/to/eclipse/Project1/WEB-INF/Release/old_release"); 
    locationsArray.add("filesystem:/path/to/eclipse/Project1/WEB-INF/flywaysrc"); 
    locations=locationsArray 
    ...other configuration params... 
} 

任何想法可能會導致此/你需要什麼樣的信息,以提供更多的輸入,可以幫助解決這個問題?

回答

0

默認情況下,flyway會在類路徑中的db/migrations文件夾中查找遷移。如果這個db/migrations存在並且它包含遷移,sqls flyway會選擇這個。遷移文件夾位置也可以使用屬性[位置] :(https://flywaydb.org/documentation/commandline/info

定製您確定在flywaysrc文件夾中有db/migrations並且db/migrations包含遷移sqls?

+0

是的,我確定。 Flyway通過gradle運行,我已經在上面的問題中添加了配置的一個片段... 奇怪的是,我可以從eclipse運行flyway並更新數據庫而沒有問題。這是當我通過Jenkins運行飛行任務時,它會失敗並出現上述錯誤。 – jonathanlevis