離線gradlew命令行打包apk設置

離線gradlew命令行打包apk設置
因爲使用命令行 gradlew 命令打包 apk,gradle 和 gradle pluging 等設置都須要配置到相應的配置文件中,因此在 Android Stuido 中的相應設置都不起做用了android

gradle離線模式設置
修改 gradle 位置,配置文件位置在於Project目錄下 ./gradle/wrapper/gradle-wrapper.proerties網絡

添加或修改 distributionUrl 設置,原值應該是 https://services.gradle.org/distributions/gradle-2.14.1-all.zip 其中 2.14.1 是相應的版本號,在本地沒有相關文件時,就會去上面的路徑去下載。app

將從網上下載好的 gradle 壓縮包放到 ./gradle/wrapper/ 目錄下maven

將 distributionUrl 值改成 gradle-3.3-all.zip 即ide

distributionUrl=gradle-3.3-all.zip工具

gradle-3.3-all.zip 是我離線打包時須要的 gradle 版本號gradle

android gradle pluging 離線配置
gradle 和 android 的 gradle pluging 是不一樣的兩個東西,可是兩者又相互關聯,二者的版本號有對應關係才能配合使用ui

具體版本號對應關係連接加密

在 Project 中,gradle pluging 的配置位置位於 Project 根目錄下 ./build.gradle 文件中,默認以下url

buildscript {
    repositories {
        jcenter()
}
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.3'
    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    }
}
1
2
3
4
5
6
7
8
9
10
其中 jcenter 是由 JFrog 公司提供的 Bintray 中的 Java 倉庫。它是當前世界上最大的 Java 和 Android 開源軟件構件倉庫。 全部內容都經過內容分發網絡(CDN)使用加密 https 鏈接獲取。JCenter 是 Goovy Grape 內的默認倉庫,Gradle 內建支持(jcenter()倉庫),很是易於在(可能除了 Maven 以外的)其餘構建工具內進行配置

com.android.tools.build:gradle:2.2.3 表示的是 gradle pluging 插件的目錄、名稱以及版本號

須要將這個遠程倉庫配置爲本地倉庫才能在離線狀態下進行打包

在 Android Studio 安裝根目錄下 ./gradle 能夠發現一個叫作 m2repository 的文件夾,這個就是一個自帶的 maven 倉庫,查看 ./gradle/m2repository/com/android/tools/build/gradle 目錄下是否有離線打包所須要的對應版本的相應文件夾,通常都是有的,若是沒有,聯網狀態下去 ide 中的相關設置裏設置爲你須要的版本,而後 ide 會自動下載,再把這個目錄移到須要離線的環境裏覆蓋,又或者去jcenter中去挨個下載,本身建立對應文件夾

在 sdk 的根目錄下 ./extras 也會有一個名爲 m2repository 的文件夾,將這個文件夾中的內容複製,移動到 Android Studio 安裝目錄下 ./gradle/m2repository 中覆蓋

在 Project 根目錄下 ./build.gradle 文件中修改成以下內容

buildscript {
    repositories {
        maven{
            url 'file://D:\\Android Stuido\\gradle\\m2repository'
        }
}
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.0'
    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
其中 D:\Android Stuido\gradle\m2repository 就是 AS 安裝目錄下的 maven 倉庫路徑

注意,若是有其餘的依賴包須要從遠程倉庫下載的話,最好可以所有放到本地去依賴,或者把須要依賴的包放到本地的 m2repository 倉庫中一份

使用gradlew命令行離線打包apk 在終端/cmd 中,Project 目錄下,使用gradlew命令打包apk,注意在最後加上 –offline 這個命令,表示使用離線模式,例如 gradlew assembleRelease –offline ---------------------  做者:nnnnrx  來源:CSDN  原文:https://blog.csdn.net/u012123160/article/details/73275912  版權聲明:本文爲博主原創文章,轉載請附上博文連接!

相關文章
相關標籤/搜索