2017-02-15 78 views
0

我開發了一個內部插件。該插件有它自己的版本。然後,我使用該插件進行存儲庫中的構建過程。 如果我改變插件的版本,我必須更新build.gradle來拼出我們的新版本。我有大約100個這樣的倉庫。 有沒有一種方法可以在我的build.gradle中指定使用可在該位置找到的插件的最新版本? 我可以在找到最新的gradle之前運行一個批處理文件,使用該編號更新build.gradle,然後運行構建過程,但這對於應該可用的功能來說是一個很大的工作。 見下面,我打電話,我經常更改插件代碼:Gradle:如何自動使用最新版本的插件

buildscript { 
    repositories { 
     maven { 
      url "c:/git/_TEST/plug-in" 
     } 
     mavenCentral() 
     maven { 
      url "https://plugins.gradle.org/m2/" 
     } 
    } 
    dependencies { 
     classpath group: 'com.myplugin.gradle', name: 'com.myplugin.mypluginbuild', version: '1.0' 
    } 
apply plugin: 'com.myplugin.mypluginbuild' 
} 

如果我不指定版本,則返回錯誤。有什麼建議麼?

+0

您可以使用動態版本:https://docs.gradle.org/current/userguide/dependency_management.html#sub:dynamic_versions_and_changing_modules – sm4

回答

0

這是不可能的。請參閱plugins {}塊和plugins文檔。

  • 對於核心插件,您不能提供版本。
  • 對於社區插件,您必須提供一個版本。

也許script plugins的路要走:我有一個解決這個問題

apply from: 'my_script_plugin.gradle' 
+0

很好的建議,但我不能夠使用該ID聲明。它因爲在Gradle Core或Gradle Central Repository中找不到「com.myplugin.mypluginbuild」而失敗。我如何實現它? – tony

0

。 版本字段中指定的+會起作用。它將使Gradle能夠自動使用最新的插件。 即:

dependencies { 
     classpath group: 'com.myplugin.gradle', name: 'com.myplugin.mypluginbuild', version: '1.+' 
    } 
相關問題