在Android studio中用gradle打 jar 包(Mac下)

這兩天公司要重構項目,之前的項目在eclipse上,準備遷移到Android studio上,須要對項目打包,因而我學習了Android studio中gradle打包的內容。我在公司用的Mac,在家用的Windows,兩種平臺下,打包基本同樣的,這裏主要說下在Mac系統下的過程。android

在Andorid studio中的Terminal用的是Mac的終端,因此要使用Terminal的gradle命令打包,先要配置下mac中的gradle環境,打開mac上的終端:windows

      (1) 輸入命令:open .bash_profileapi

      (2) 若是提示沒有.base_profile文件,則要先建立.bash_profile文件。bash

           建立.bash_profile文件:app

                   輸入:touch .bash_profile     命令後會幫你建立並打開.bash_profile文件eclipse

     (3)在打開的.bash_profile文件中編輯,下面是我內容:學習

            export GRADLE_HOME=/Users/wuqiyan/Downloads/Software/gradle-2.12;(下載gradle-2.12,解壓後的目錄)gradle

            export PATH=$PATH:$GRADLE_HOME/binui

            保存後就能夠了。spa

      (4)再輸入命令:open .bash_profile 就能夠打開.bash_profile文件內容了。

      (5)以上過程結束後,gradle環境配置好了。檢查下,輸入命令:gradle -version  看到下面的就等於配置好了。

           

              ------------------------------------------------------------

              Gradle 2.12

             ------------------------------------------------------------

 

             Build time:   2016-03-14 08:32:03 UTC

             Build number: none

             Revision:     b29fbb64ad6b068cb3f05f7e40dc670472129bc0

 

            Groovy:       2.4.4

            Ant:          Apache Ant(TM) version 1.9.3 compiled on December 23 2013

            JVM:          1.8.0_77 (Oracle Corporation 25.77-b03)

            OS:           Mac OS X 10.11.3 x86_64

 

以上就是Mac中的gradle的配置,這時候回到Android studio中,在Terminal中輸入命令:gradle -version  也會看到上面的提示。

先來看下目錄結構:

 

先建了一個項目後,打開app下的build.gradle文件:

(1)將 apple plugin:'com.android.application'改成apply plugin: 'com.android.library'

(2)刪除:applicationId,versionCode,versionName

(3)加入:

task clearJar(type: Delete) {
    //刪除之前有的
    delete 'build/libs/partJar.jar'
 }
task makeJar(type: Copy) {
     //從哪裏打包class文件,能夠指定文件和目錄
     from('build/intermediates/bundles/debug/')
      //打包到jar後的目錄結構
     into('build/libs/')
     include('classes.jar')
     rename ('classes.jar', 'partJar.jar')
 }
 makeJar.dependsOn(clearJar, build) 
代碼輸入完以後,在andriod studio中Terminal中輸入:./gradlew makeJar    (windows中輸入:gradlew makeJar)
最後就能夠在 build/libs/目錄下找到partJar.jar。



若是要打Jar指定包名和類的話,能夠參考下面的代碼:
task clearJar(type: Delete) {
    delete 'build/libs/partJar.jar'
}
task makeJar(type:org.gradle.api.tasks.bundling.Jar) {
    //指定生成的jar名
    baseName 'partJar2'
    //從哪裏打包class文件,能夠指定文件和目錄
    from('build/intermediates/classes/debug/com/example/wuqiyan/exportjar/') {
        include 'BuildConfig.class'
    }
    //打包到jar後的目錄結構
    into('com/example/wuqiyan/exportjar/')
}
makeJar.dependsOn(clearJar,build)

能夠閱讀:http://www.alloyteam.com/2015/03/shi-yong-gradle-da-bao-zhi-ding-bao-ming-he-lei-di-jar/

              http://www.jianshu.com/p/dc6bcd4478a1

http://blog.csdn.net/edisonchang/article/details/51296265

相關文章
相關標籤/搜索