我刚把我的Android Gradle插件从0.12更新到0.13。另外,我下载了Gradle 2.1。然后,我尝试使用Android Studio 0.8.9 beta版本,但根据http://tools.android.com/tech-docs/new-build-system/version-compatibility ,我必须至少使用Android studio 0.8.11(金丝雀频道)。所以我升级了Android Studio,但仍然存在问题。
目前,我必须使用Gradle 1.10和Android Gradle插件0.12.+才能正常工作。
以下是AS报错:
目前,我必须使用Gradle 1.10和Android Gradle插件0.12.+才能正常工作。
以下是AS报错:
Error:No such property: projectDependencies for class: com.android.build.gradle.internal.api.ApplicationVariantImpl_Decorated
编辑:
这是我的build.gradle文件。// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
// works with 0.12.+ (not with 0.13.+)
classpath 'com.android.tools.build:gradle:0.12.+'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
// The latest version of the android-apt plugin
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.3'
}
}
allprojects {
repositories {
maven { // For Android-ViewPagerIndicator
url "http://dl.bintray.com/populov/maven"
}
jcenter()
mavenCentral()
maven {
url "http://JRAF.org/static/maven/2"
}
}
}
这是我的gradle-wrapper.properties文件
#Fri Sep 19 17:50:42 CEST 2014
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
# use gradle-2.1-all.zip with android gradle plugin 0.13
distributionUrl=http\://services.gradle.org/distributions/gradle-1.10-all.zip
编辑2:
apply plugin: 'com.android.application'
apply plugin: 'android-apt'
android {
compileSdkVersion 19
buildToolsVersion "20.0.0"
defaultConfig {
applicationId 'xxx'
minSdkVersion 10
targetSdkVersion 19
versionCode xxx
versionName 'xxx'
}
// For more information see
// @link http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Using-sourceCompatibility-1.7
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
signingConfigs {
debug {
storeFile file('../../KeyStore/debug.keystore')
storePassword 'android'
keyAlias 'androiddebugkey'
keyPassword 'android'
}
release {
storeFile file('xxx')
storePassword 'xxx'
keyAlias 'xxx'
keyPassword 'xxx'
}
}
buildTypes {
// Just intern. This is alpha build
debug {
buildConfigField "boolean", "FORCE_GOOG_GEO_API", "false" // can be set to true in debug but not in other buildTypes
buildConfigField "boolean", "ENABLE_LOG", "true"
buildConfigField "String", "HOST", "\"xxx\""
versionNameSuffix '-alpha'
signingConfig signingConfigs.debug
zipAlign true
}
// For customer
recette {
buildConfigField "boolean", "FORCE_GOOG_GEO_API", "false"
buildConfigField "boolean", "ENABLE_LOG", "false"
buildConfigField "String", "HOST", "\"xxx\""
versionNameSuffix '-recette'
signingConfig signingConfigs.debug
zipAlign true
}
// PreProd
preprod {
buildConfigField "boolean", "FORCE_GOOG_GEO_API", "false"
buildConfigField "boolean", "ENABLE_LOG", "false"
buildConfigField "String", "HOST", "\"xxx\""
signingConfig signingConfigs.debug
zipAlign true
}
// Prod
release {
buildConfigField "boolean", "FORCE_GOOG_GEO_API", "false"
buildConfigField "boolean", "ENABLE_LOG", "false"
buildConfigField "String", "HOST", "\"xxx\""
signingConfig signingConfigs.release
zipAlign true
runProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'
}
}
// This is important, it will run lint checks but won't abort build
lintOptions {
abortOnError false
disable 'MissingTranslation'
}
packagingOptions {
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
exclude 'AndroidManifest.xml'
}
}
apt {
arguments {
resourcePackageName android.defaultConfig.packageName
androidManifestFile variant.processResources.manifestFile
}
}
def GoogPlayServVersion = '5.0.+';
def GsonVersion = '2.2.4';
def LibPhoneNumbVersion = '5.9';
def GreenRobotVersion = '2.2.1';
def OkHttpVersion = '2.0.0';
def OkHttpConnVersion = '2.0.0';
def JacksonCore = '2.4.1';
def JacksonDatabind = '2.4.1';
def JacksonAnnotations = '2.4.0';
def SwitchVersion = '1.3.1';
def CroutonVersion = '1.8.4';
def ActionBarSherlockVersion = '4.4.0';
def ViewpagerIndicatorVersion = '2.4.1';
def PicassoVersion = '2.3.4';
def RoboSpiceVersion = '1.4.12';
def StickyListHeaders = '2.4.1';
def AAVersion = '3.1';
def RobotiumVersion = '5.2.1';
dependencies {
// Include all jar in libs folder
compile fileTree(dir: 'libs', include: ['*.jar'])
// Google Play Services
compile "com.google.android.gms:play-services:$GoogPlayServVersion"
// Gson
compile "com.google.code.gson:gson:$GsonVersion"
// LibphoneNumber
compile "com.googlecode.libphonenumber:libphonenumber:$LibPhoneNumbVersion"
// GreenRobot
compile "de.greenrobot:eventbus:$GreenRobotVersion"
// OkHttp [We use repackaged version @see https://github.com/square/okhttp/issues/967]
// compile "com.squareup.okhttp:okhttp:$OkHttpVersion"
// compile "com.squareup.okhttp:okhttp-urlconnection:$OkHttpConnVersion"
// Jackson
compile "com.fasterxml.jackson.core:jackson-core:$JacksonCore"
compile "com.fasterxml.jackson.core:jackson-databind:$JacksonDatabind"
compile "com.fasterxml.jackson.core:jackson-annotations:$JacksonAnnotations"
// Switch backport
compile "org.jraf:android-switch-backport:$SwitchVersion"
// Crouton lib
compile("de.keyboardsurfer.android.widget:crouton:$CroutonVersion") {
// exclusion is not neccessary, but generally a good idea.
exclude group: 'com.google.android', module: 'support-v4'
}
// You must install or update the Support Repository through the SDK manager to use this dependency.
// The Support Repository (separate from the corresponding library) can be found in the Extras category.
// compile 'com.android.support:support-v4:19.1.0'
// compile 'com.android.support:gridlayout-v7:19.1.0'
// ActionBarSherlock
compile "com.actionbarsherlock:actionbarsherlock:$ActionBarSherlockVersion@aar"
// Android-ViewPagerIndicator
compile "com.viewpagerindicator:library:$ViewpagerIndicatorVersion@aar"
// Picasso
compile "com.squareup.picasso:picasso:$PicassoVersion"
// Robospice
compile "com.octo.android.robospice:robospice:$RoboSpiceVersion"
// StickyList headers
compile "se.emilsjolander:stickylistheaders:$StickyListHeaders"
// Facebook sdk
compile 'fr.avianey:facebook-android-api:+@aar'
// android annotations
compile "org.androidannotations:androidannotations-api:$AAVersion"
apt "org.androidannotations:androidannotations:$AAVersion"
compile 'com.sothree.slidinguppanel:library:+'
// Tests part
androidTestCompile "com.jayway.android.robotium:robotium-solo:$RobotiumVersion"
compile "com.jayway.android.robotium:robotium-solo:$RobotiumVersion"
}
你知道我该如何解决这个问题吗?
谢谢
gradle-wrapper
不应该是distributionUrl=http\://services.gradle.org/distributions/gradle-2.1-all.zip
吗? - nhaarman