您可以使用 IntelliJ 原生匯入器 或 Eclipse Buildship 在 IDE 中開啟此範例。 |
複合建置以開發 Gradle 外掛
此範例示範複合建置,用於開發 Gradle 外掛,並搭配使用建置。
外掛可以位於同一個儲存庫(僅此建置使用),或位於不同的儲存庫(許多其他建置使用)。
這消除了對特殊 buildSrc
專案的需求,並讓外掛原型製作更為容易。
buildscript 相依性已取代
在複合建置中,在 plugins { }
區塊或 buildscript
classpath
設定中宣告的相依性,會以與其他相依性相同的方式取代。在此範例中,建置宣告外掛 'org.sample.greeting',而此相依性已由 greeting-plugin
內含建置取代。
無需將 greeting-plugin
專案發布到儲存庫,即可使用當地開發的 'org.sample.greeting' 外掛建置專案。
> gradle --include-build ../greeting-plugin greeting [composite-build] Configuring build: /home/user/gradle/sample/compositeBuilds/plugin-dev/greeting-plugin :greeting-plugin:compileJava :greeting-plugin:pluginDescriptors :greeting-plugin:processResources :greeting-plugin:classes :greeting-plugin:jar :my-greeting-app:greeting Hi Bob!!!
外掛變更可以測試
此範例可用於示範 Gradle 外掛的開發生命週期。編輯檔案 greeting-plugin/src/main/java/org/sample/GreetingTask.java
以變更問候語,並重新執行使用者建置
> gradle --include-build ../greeting-plugin greeting [composite-build] Configuring build: /home/user/gradle/sample/compositeBuilds/plugin-dev/greeting-plugin :greeting-plugin:compileJava :greeting-plugin:pluginDescriptors :greeting-plugin:processResources :greeting-plugin:classes :greeting-plugin:jar :my-greeting-app:greeting G'day Bob!!!