2014-01-30 91 views
1

我有兩個共享一個子項目的Android應用程序。在子項目的build.gradle包含這樣的依賴性:如何防止Gradle導出依賴項?

dependencies { 
    compile "my.library.dependency:${version}" 
} 

我想什麼是使用在編譯時這種依賴關係,但不是運行。這是因爲這兩個應用程序需要鏈接到稍微不同的依賴版本(相同的API)。

的搖籃文檔描述依賴關係配置是這樣的:

編譯編譯的 項目生產源所需的依賴關係。

運行時間生產類別在 運行時所需的相關性。默認情況下,還包含編譯時依賴關係。

如果運行還包括編譯的依賴,這是否意味着該庫從子項目出口到父項目(幷包括在我的APK)?如果是這樣,我該如何預防呢?我認爲這是可能的,因爲它說「默認」。

在此先感謝...

+1

你正在建造什麼樣的項目?獨立的應用程序?網絡檔案? 「出口」是什麼意思? –

+0

@JBNizet好的問題。爲了清晰起見,我更新了問題。 –

回答

3

目前尚不清楚,如果你的子項目正在使用的Android庫插件,但如果是這樣,V0.8還增加了提供範圍 - 請http://tools.android.com/recent/androidstudio043released

這應該工作:

dependencies { 
    provided "my.library.dependency:${version}" 
} 

如果升級到該插件的0.8,你需要運行搖籃1.10(更新,如果您使用的包裝gradle-wrapper.properties),如果你正在使用Android Studio,升級到0.4.3。

相關問題