J'ajoute une bibliothèque à jCenter. Pour ce faire, j'ai dû ajouter des plugins au fichier build.gradle de mon projet. Cependant, je reçois l'erreur
La déclaration de tâche «propre» personnalisée lors de l'utilisation des plug-ins Gradeal Lifecycle standard n'est pas autorisée.
Je peux voir le bloc task clean
et lorsque je le supprime, l'erreur disparaît. Je suppose que c’est tout ce que je dois faire, mais est-ce que cela faisait déjà quelque chose d’important? Si je supprime les plugins à un moment donné et que j'oublie d'ajouter le bloc clean
, quelles en seront les conséquences?
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.Android.tools.build:gradle:2.3.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
plugins {
id "com.jfrog.bintray" version "1.7.3"
id "com.github.dcendents.Android-maven" version "1.5"
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Ceci et ceci cela n'a pas répondu de manière satisfaisante à la question.
Vous ne devez pas essayer de remplacer la tâche clean
par défaut, mais la configurer pour supprimer des éléments supplémentaires tels que
clean {
delete rootProject.buildDir
}
Mais vérifiez d'abord s'il ne s'agit pas du comportement par défaut de la tâche de nettoyage.
Alternativement, si vous voulez pouvoir effectuer une action de nettoyage spécifique individuellement, vous pouvez également définir une tâche distincte et ajouter une dépendance telle que
task customClean(type: Delete) {
delete rootProject.buildDir
}
clean.dependsOn customClean
Supprimez ces lignes de votre code.
task clean(type: Delete) {
delete rootProject.buildDir
}
Dans le code donné:
allprojects {
repositories {
google()
jcenter()
mavenCentral()
}
tasks.withType(JavaCompile) {
sourceCompatibility = "1.8"
targetCompatibility = "1.8"
}
task clean(type: Delete) {
delete rootProject.buildDir
}
}
remplacez le task clean
par task delete
alors cela fonctionnera:
allprojects {
repositories {
google()
jcenter()
mavenCentral()
}
tasks.withType(JavaCompile) {
sourceCompatibility = "1.8"
targetCompatibility = "1.8"
}
task delete(type: Delete) {
delete rootProject.buildDir`
}
}
J'ai eu le même problème, malheureusement, pour moi, j'ai mis le task clean
au mauvais endroit. J'ai eu ceci:
allprojects {
repositories {
google()
jcenter()
mavenCentral()
}
tasks.withType(JavaCompile) {
sourceCompatibility = "1.8"
targetCompatibility = "1.8"
}
task clean(type: Delete) {
delete rootProject.buildDir
}
}
Ce qui devait être ceci:
allprojects {
repositories {
google()
jcenter()
mavenCentral()
}
tasks.withType(JavaCompile) {
sourceCompatibility = "1.8"
targetCompatibility = "1.8"
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Après tant de recherches, nous avons constaté que nous devions simplement commenter la ligne de tâche propre de bulid.gradle (Projet) comme ci-dessous:
// task clean(type: Delete) {
// delete rootProject.buildDir
// }][1][enter image description here][1]
enter code hereallprojects {
repositories {
google()
jcenter()
maven {
url 'https://maven.google.com'
}
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
si vous avez ajouté maven dans votre "build.gradle", vérifiez tous les crochets. Le code devrait être comme ci-dessus. Cela devrait résoudre le problème. Il est possible que des crochets soient placés à des endroits différents.