問題1:在使用Gradle多模塊管理時,子模塊中定義本地依賴要注意相對路徑是以子模塊為基准,不出錯但就是找不到依賴的類
比如:
subprojects { dependencies { compileOnly 'com.google.code.findbugs:annotations:3.0.1' compileOnly files('../lib/webfast-common-0.0.1.jar') # 此處的本地依賴lib是位於父級項目中,如果使用lib/webfast-xxx.jar則是指位於子模塊中 implementation 'org.springframework.boot:spring-boot-starter' testImplementation 'org.springframework.boot:spring-boot-starter-test' } }
問題2:在使用Gradle的clean任務后,通過Intellij IDEA運行程序時會先執行Gradle的build任務,發現只是把java目錄中的類文件編譯生成,但resources文件沒有同時生成,這種情況以前一真沒有發生。檢查之后發現是由於在模塊中使用了新的Gradle插件java-library,這個插件對以前的java插件是不是產生了影響尚不清楚,但是只要是加入了java-library插件,resources資源文件就不生成到build文件夾,因此會造成運行程序時找不到.properties、xml、yml和自定義的資源文件。