Gradle中使用SpringBoot插件構建多模塊遇到的問題

一般下,多模塊的項目以下:java

Root project 'demospring'
    +--- Project ':model'
    \--- Project ':rest'

那麼咱們須要在rest模塊依賴model模塊,也很是簡單,方式以下:spring

compile project(":model")

一般狀況,咱們運行項目時不會有錯的,可是你執行gradle的build任務時,坑爹的地方就來了,會報相似以下的錯誤:springboot

:model:build
    :rest:compileJava
    /Users/xxxxx/Documents/SourceTree/demospring/rest/src/main/java/bookmarks/Application.java:19: error: cannot find symbol
            CommandLineRunner init(AccountRepository accountRepository,
                                   ^
      symbol:   class AccountRepository
      location: class Application
    /Users/xxxxx/Documents/SourceTree/demospring/rest/src/main/java/bookmarks/Application.java:20: error: cannot find symbol
                            BookmarkRepository bookmarkRepository) {
    .......

這個緣由是springboot的gradle插件不能直接引用類路徑下的其餘依賴,我想這麼作它無非是保證服務的獨立性,可是每每實際開發中,咱們項目之間確定會涉及模塊之間的依賴,那怎麼解決呢?gradle

能夠參考以下的配置:ui

sourcesets{
        main{
            java{
                srcDirs=['src/main/java','.../依賴的模塊/src/main/java']
            }
        }
    }
相關文章
相關標籤/搜索