我的問題是一個簡單的問題,我不知道如何解決。Android編譯依賴項 - Gradle Build
當編譯gradle這個圖書館,我使用的代碼如下所示:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:cardview-v7:21.0.+'
compile 'com.android.support:recyclerview-v7:21.0.+'
compile 'com.android.support:design:22.2.+'
compile 'com.android.support:appcompat-v7:22.2.+'
}
這給了我什麼,我想,我沒有任何問題。我猜測上面的代碼確保每個依賴項的最新版本在應用程序構建時編譯(因此每個語句結尾處的「+」號)。然而,我在很多地方已經看到了網上,其中相同的代碼行如下所示不帶「+」號:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:cardview-v7:21.0.0'
compile 'com.android.support:recyclerview-v7:21.0.0'
compile 'com.android.support:design:22.2.0'
compile 'com.android.support:appcompat-v7:22.2.0'
}
沒有明顯的區別的,都很好地工作一樣。但作爲一個開發人員,我打算長期支持應用程序,應該使用哪種應用程序?帶或不帶附加的「+」號。 使用某種產品可能帶來哪些好處或問題?任何反饋將不勝感激。如果你使用+所以它檢查是否有更新的每一次,它會被打破構建 當靜態它特定版本提供扶養
你應該使用「+」。您不必擔心更新。如果庫的更新版本可用,Android Studio將自動編譯更新的庫。但是,如果更新的庫包含錯誤,則可能需要更改舊版本號。 – myatmins
如果你打開lint它說'避免在版本號中使用+,可能會導致不可預測的和不可重複的版本.' – Onheiron