android gradle makejar配置

task makeJar(type: Jar, dependsOn: ['compileReleaseJavaWithJavac']) {
    destinationDir = file('build/libs/jar/')
    appendix = "jar" // SDK的後綴名稱
    baseName = "sdkname" // SDK名稱
    version = 1.0 // 這個常量是在gradle.properties中配置的
    // manifest信息
    def map = [ 'Version': 1.0,
                'Gradle': project.gradle.gradleVersion,
                'Vendor': '',
                'Date': new Date().getDateTimeString()]
    manifest.attributes(map)
    from('build/intermediates/classes/release')
    exclude('**/BuildConfig.class')
    exclude('**/BuildConfig\$*.class')
    exclude('**/R.class')
    exclude('**/R\$*.class')
    include('**/*.class')
}
task proguardJar(dependsOn: ['makeJar'], type: proguard.gradle.ProGuardTask) {
    configuration 'proguard-rules.pro'
    String inJar = makeJar.archivePath.getAbsolutePath()
    //輸入 jar
    injars inJar
    println "lixiang->>"+inJar
    //輸出 jar 的位置和名稱
    String outJar = inJar.substring(0, inJar.lastIndexOf(File.separator)) + "/proguard-${makeJar.archiveName}"
    outjars outJar
    println "lixiang->>"+outJar
    //設置不刪除未引用的資源(類,方法等)
    dontshrink
} 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章