AS 1.0 RC 1およびプラグイン0.14.4に更新した後、build.gradleの名前変更部分に問題があります。
applicationVariants.all { variant ->
def file = variant.outputFile
variant.outputFile = new File(file.parent, file.name.replace(".apk", "-" + defaultConfig.versionName + ".apk"))
}
今すぐ投げる:
Error:(78, 0) Could not find property 'outputFile' on com.Android.build.gradle.internal.api.ApplicationVariantImpl_Decorated@67e7625f.
また、クラスのApplicationVariantImplにジャンプして、プロパティの名前が変更された可能性を確認することもできません。誰でもこれの回避策を知っていますか?
これを試して
applicationVariants.all { variant ->
variant.outputs.each { output ->
def file = output.outputFile
output.outputFile = new File(file.parent, file.name.replace(".apk", "-" + defaultConfig.versionName + ".apk"))
}
}
より包括的に:
applicationVariants.all { variant ->
variant.outputs.each { output ->
output.outputFile = new File(output.outputFile.parent, output.outputFile.name.replace(".apk", "-" + defaultConfig.versionName + ".apk"))
}
}
これはいくつかの理由で発生する可能性があります。
1.)最初に @ Khalidov で言ったように、試してください
applicationVariants.all { variant ->
variant.outputs.each { output ->
output.outputFile = ...
}
}
2.)次に、他のすべてのプラグインを更新してみます。
たとえば、 Spoon でこの問題が発生しました。これは、Spoonを次のように更新することで解決しました。
classpath 'com.stanfy.spoon:spoon-gradle-plugin:0.14.1'
または、バリアントが1つしかない場合:
def apk = outputs[0].outputFile
の代わりに
def apk = variant.outputFile
必ず最新のgradleバージョンを実行してください(プラグインではなく、自分でgradleしてください)。
gradle-wrapper.properties
。 gradle 2.1を実行していますか?
互換性の詳細: http://tools.Android.com/tech-docs/new-build-system/version-compatibility
私は次のように解決できました:
古い:
buildTypes {
libertação {
runProguard false // esta linha tem que ser mudado
proguardFiles getDefaultProguardFile ( 'Android.txt proguard-' ), 'proguard-rules.pro'
}
}
新しい:
buildTypes {
libertação {
minifyEnabled false // nova versão
proguardFiles getDefaultProguardFile ( 'Android.txt proguard-' ), 'proguard-rules.pro'
}
}
ruan65によるこの投稿で説明されているように、プロジェクトのbuil.gradleファイルで編集 エラー:(26、0)Gradle DSLメソッドが見つかりません: 'runProguard()'
そして、編集後もこの行:
applicationVariants . all { variant ->
variant . outputs . each { output ->
def file = output . outputFile
output . outputFile = new File ( file . parent , file . name . replace ( ".apk" , "-" + defaultConfig . versionName + ".apk" ))
}
}
そこまで言われたように。それで落ち着きました!