我正在尝试将Dexguard添加到Android Studio。我遵循了这些准则,所以我的build.gradle如下:
buildscript {
repositories {
mavenCentral()
flatDir { dirs '/Users/XXXX/Desktop/DexGuard5.3.00/lib' }
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.4'
classpath ':dexguard:'
}
}
apply plugin: 'dexguard'
android {
compileSdkVersion 19
buildToolsVersion "19.0.3"
defaultConfig {
minSdkVersion 9
targetSdkVersion 19
versionCode 1
versionName "1.0"
}
buildTypes {
debug {
proguardFile plugin.getDefaultDexGuardFile('dexguard-debug.pro')
proguardFile 'dexguard-project.txt'
proguardFile 'proguard-project.txt'
}
release {
proguardFile plugin.getDefaultDexGuardFile('dexguard-release.pro')
proguardFile 'dexguard-project.txt'
proguardFile 'proguard-project.txt'
}
}
}
dependencies {
compile 'com.android.support:support-v4:19.0.1'
compile 'com.android.support:appcompat-v7:19.0.1'
compile fileTree(dir: 'libs', include: ['*.jar'])
}
然后我尝试构建项目,我收到以下错误:
错误:配置项目':XXXX'时出现问题。 没有这样的属性:class的baseName:com.android.build.gradle.internal.variant.ApplicationVariantData
有没有人再遇到这样的问题?
提前谢谢!
答案 0 :(得分:1)
DexGuard 5.3.00的Gradle插件与Android插件0.5.1兼容,因此您应该调整文件顶部的类路径。
您可能希望安装最新版本的Gradle插件。在撰写本文时,DexGuard 5.5的Gradle插件与Android插件0.9.0兼容。
作为参考,您始终可以在DexGuard的示例目录中找到包含构建文件的工作示例项目。
答案 1 :(得分:0)
首先,您可以尝试在" project / maven_push.gradle"
中添加nexusUsername=123 nexusPassword=123
然后如果它报告"错误:找不到属性' allJava'在源集主。"
你可以试试这个:
task androidJavadocs(type: Javadoc) {
// comment it if you find
//source = android.sourceSets.main.allJava
}
task androidJavadocsJar(type: Jar) {
classifier = 'javadoc'
//basename = artifact_id
// comment it if you find
//from android.sourceSets.main.allSource
}
task androidSourcesJar(type: Jar) {
classifier = 'sources'
//basename = artifact_id
////comment it if you find
//from android.sourceSets.main.allSource
}
最后这不是我的答案,我在一个小博客中发现它~~~感谢authoer,它解决了我的问题〜 祝你好运〜