Yar*_*lyk 16 android proguard gradle
我按照Proguard Gradle手册的建议配置了build.gradle
这是root build.gradle
buildscript {
repositories {
flatDir dirs: '/home/username/android-sdks/tools/proguard/lib'
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
classpath ':proguard'
}
}
Run Code Online (Sandbox Code Playgroud)
现在这是我项目的build.gradle
apply plugin: 'android'
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
compile project(':SomeLibraryProject')
}
android {
compileSdkVersion 19
buildToolsVersion "19.0.0"
sourceSets {
...
}
task runProguardTask(type: proguard.gradle.ProGuardTask) {
}
signingConfigs {
debug {
storeFile file("./keystore/keystore")
storePassword "******"
keyAlias "******"
keyPassword "*******"
}
release {
runProguard true
proguardFile 'proguard-android.txt'
storeFile file("./releasekey/keystore")
storePassword "******"
keyAlias "********"
keyPassword "*******"
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是输出
$ ./gradlew build
FAILURE: Build failed with an exception.
* Where:
Build file '/home/username/Documents/eclipse/workspace/repo/ProjectName/build.gradle' line: 49
* What went wrong:
A problem occurred evaluating project ':ProjectName'.
> Could not find method runProguard() for arguments [true] on SigningConfigDsl_Decorated{name=release, storeFile=null, storePassword=null, keyAlias=null, keyPassword=null, storeType=null}.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 9.14 secs
Run Code Online (Sandbox Code Playgroud)
我也想知道为什么storeFile,storePassword,keyAlias和keyPassword都是null?
Alé*_*lho 57
runProguard已被弃用(并将很快停止工作); 改为" minifyEnabled "而不是
...
buildTypes {
release {
minifyEnabled true
....
Run Code Online (Sandbox Code Playgroud)
Ser*_*kyi 13
由于错误的DSL属性名称,这种错误很常见.:请确保您指定正确的值http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Running-ProGuard你build.gradle:
android {
buildTypes {
release {
minifyEnabled true
proguardFile getDefaultProguardFile('proguard-android.txt')
}
}
}
Run Code Online (Sandbox Code Playgroud)
你可以在这里找到所有属性的javadoc(点击下载DSL参考btn):http: //developer.android.com/tools/building/plugin-for-gradle.html
2014-11-24更新时间:
一些属性在0.14.0 gradle插件中重命名.runProguard -> minifyEnabled从Alécio检查答案,并在此按最近更改:http://tools.android.com/tech-docs/new-build-system
| 归档时间: |
|
| 查看次数: |
25168 次 |
| 最近记录: |