web-dev-qa-db-fra.com

Gradle - La transformation n'a pas encore été exécutée

Je viens de migrer mon projet vers Android et j'ai activé le jetifier.

Maintenant, lorsque je veux construire mon projet, le message d'erreur suivant s'affiche: "La transformation n'a pas encore été exécutée" La synchronisation avec Gradle se termine sans erreur, mais la construction échoue.

L'exécution de cette tâche a échoué:

Transform org.Eclipse.jdt.core.jar (org.Eclipse.jdt:org.Eclipse.jdt.core:3.10.0) with IdentityTransform

Trace de la pile :

Java.lang.IllegalStateException: Transformation hasn't been executed yet
    at org.gradle.api.internal.artifacts.transform.TransformInfo.getFailure(TransformInfo.Java:88)
    at org.gradle.api.internal.artifacts.transform.TransformInfo.access$300(TransformInfo.Java:48)
    at org.gradle.api.internal.artifacts.transform.TransformInfo$ChainedTransformInfo$ChainedArtifactTransformStepOperation.run(TransformInfo.Java:235)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.Java:300)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.Java:292)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.Java:174)
    at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.Java:90)
    at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.Java:31)
    at org.gradle.api.internal.artifacts.transform.TransformInfo$ChainedTransformInfo.execute(TransformInfo.Java:217)
    at org.gradle.api.internal.artifacts.transform.TransformInfoExecutor.execute(TransformInfoExecutor.Java:34)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.Java:277)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.Java:262)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.Java:135)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.Java:130)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.execute(DefaultTaskPlanExecutor.Java:200)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.executeWithWork(DefaultTaskPlanExecutor.Java:191)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.run(DefaultTaskPlanExecutor.Java:130)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.Java:63)
    at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.Java:46)
    at Java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.Java:1142)
    at Java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.Java:617)
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.Java:55)
    at Java.lang.Thread.run(Thread.Java:745)

Mon poste de travail:

Build: 3.3 Canary 13
Android Gradle Plugin: 3.3.0-alpha13
Gradle: 4.10.1
BuildToolsVersion : 28.0.3
Compile/Targer sdkVersion : 28
3
Saeed.re

Ce problème était lié à la bibliothèque AutoFactory qui entraînait l'échec de la génération.

Après avoir creusé un peu Internet, j’ai trouvé que remplacer 

com.google.auto.factory:auto-factory:1.0-beta5

avec 

com.google.auto.factory:auto-factory:1.0-beta5@jar

dans les dépendances corrige le problème.

1
Saeed.re

Mettez à jour votre wrapper à la dernière version dans gradle-wrapper.properties.

Le mien était

distributionUrl==https\://services.gradle.org/distributions/gradle-4.10.1-all.Zip

et j'ai mis à jour pour

distributionUrl=https\://services.gradle.org/distributions/gradle-5.2.1-all.Zip

0
Rubin Yoo

Ok les gars!

J'ai trouvé l'erreur. C'était à moi. J'essayais de implémenter la bibliothèque à la place de testImplement it . J'avais l'erreur ci-dessus renvoyée par les tâches du jetificateur . Je l'ai donc changée: 

implementation "com.Android.tools.lint: lint-api: 26.2.1"

implementation "com.Android.tools.lint: lint-tests: 26.2.1"

à

testImplementation "com.Android.tools.lint: lint-api: 26.2.1"

testImplementation "com.Android.tools.lint: lint-tests: 26.2.1"

Merci Jésus! Et il y avait 2 jours ...

0
Dimitri de Jesus