2013-11-20 44 views
0

我已經編寫了一組示例Android應用程序,默認使用最新版本的特定庫,使用語法4.0。+,其工作得很好,可以被覆蓋用戶使用Gradle屬性fwiw。Gradle:如何獲得特定的依賴RELEASE版本號

我想在構建時和/或運行時報告正在使用特定庫的實際版本,例如, 4.0.7。 Gradle是否可以訪問這個實際版本?否則,有沒有辦法查詢Maven倉庫以獲取RELEASE版本號?

回答

1
apply plugin: 'java' 
apply plugin: 'maven' 

repositories { 
    mavenCentral() 
} 

task prepare << { 
    configurations.runtime.resolvedConfiguration.resolvedArtifacts.each { 
     def vers = it.getModuleVersion().getId().getVersion() 
     logger.lifecycle "${it.name} ${it.type} has version=$vers" 
    } 
} 

dependencies { 
    runtime group: 'org.apache.commons', name: 'commons-io', version: '1.3.2' 
    runtime group: 'commons-logging', name: 'commons-logging', version: '1.0.4', ext: 'jar' 
} 

您應該可以剪切粘貼上面的build.gradle文件並執行它。

您將需要用「依賴關係」中使用的任何配置替換「運行時」配置。作爲FYI,我相信'運行時'配置是由'java'插件添加的。

+0

當我將這段代碼添加到項目配置中時,Gradle抱怨說「在配置容器上找不到屬性'運行時'。」你可以編輯/闡述你的答案,以顯示我應該如何正確使用它的一個非常簡單的例子? – pajato0

+0

也許你可以發佈更多的你的gradle代碼,我可以發表評論。我在很長一段時間內一直在努力解決同樣的問題,直到找到上述問題。 – cjtkirk

相關問題