Comment changer la version du 'wrapper de gradle par défaut' dans IntelliJ IDEA?

91

Je veux utiliser Gradle 1.10 au lieu de 1.9. Je n'arrive pas à trouver où changer cela.

Si je mets ceci:

task wrapper(type: Wrapper) {
    gradleVersion = '1.10'
}

dans my build.gradleet rebuild, il est à nouveau construit avec Gradle 1.9 (donc rien ne se passe réellement).

Ceux-ci semblent être tous les paramètres: (et IntelliJ section d'aide sur Gradle n'aide pas du tout :() Que signifie «non configuré pour le projet en cours»?

Type
la source
1
Avez-vous régénéré l'emballage gradle(w) wrapperaprès l'avoir changé gradleVersion?
Peter Niederwieser
2
ont essayé ceci: stackoverflow.com/questions/24460299/… supprimez simplement les fichiers wrapper, puis exécutez à wrappernouveau la tâche
La fin du
Pas besoin de supprimer des fichiers.
Peter Niederwieser
1
Les tâches Gradle peuvent être exécutées à partir d'IntelliJ, vous devriez donc pouvoir également exécuter la tâche wrapper. C'est peut-être aussi ce à quoi sert "utiliser un wrapper de gradle personnalisable" (mais je ne suis pas sûr).
Peter Niederwieser
1
Merci les gars pour votre aide, j'ai réussi à le faire fonctionner en passant à un wrapper de gradle personnalisable et en régénérant le wrapper en exécutant la wrappertâche. Cependant, je ne sais toujours pas quel est le wrapper de gradle par défaut .
Bloke

Réponses:

105

Le moyen le plus simple consiste à exécuter la commande suivante à partir de la ligne de commande (voir Mise à niveau de Gradle Wrapper dans la documentation):

./gradlew wrapper --gradle-version 5.5

De plus, vous pouvez utiliser un --distribution-typeparamètre avec l'un binou l' autre allpour choisir un type de distribution. Utilisez le alltype de distribution pour éviter un indice d'IntelliJ IDEA ou d'Android Studio qui vous proposera de télécharger Gradle avec les sources:

./gradlew wrapper --gradle-version 5.5 --distribution-type all

Ou vous pouvez créer une wrappertâche personnalisée

task wrapper(type: Wrapper) {
    gradleVersion = '5.5'
}

et courez ./gradlew wrapper.

Michael
la source
2
Si vous exécutez la tâche dans un projet racine contenant des sous-projets, exécutez-la ./gradlew :wrapperavec deux points devant le nom de la tâche.
Philippe
35

Ouvrez le fichier gradle/wrapper/gradle-wrapper.propertiesdans votre projet. Modifiez la version dans distributionUrlpour utiliser la version que vous souhaitez utiliser, par exemple,

distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip
Apérifons
la source
4
mieux utiliser la tâche gradle qu'ils ont créée à cet effet pour que les scripts se mettent à jour correctement, etc.
dabluck
ils mettent également à jour leurs fichiers binaires et leurs scripts, que vous n'obtiendrez que si vous exécutez la tâche de mise à jour. cela pourrait potentiellement créer des incompatibilités
dabluck
1
Oui. Voir Mise à niveau de Gradle Wrapper dans la documentation Gradle.
Lu55
3

Je voulais juste souligner que j'ai frappé ceci après la mise à jour des composants Android Studio.

Ce qui a fonctionné pour moi a été d'ouvrir gradle-wrapper.properties et de mettre à jour la version de gradle utilisée. À partir de maintenant, pour mes projets, la ligne se lit comme suit:

distributionUrl=https\://services.gradle.org/distributions/gradle-4.5-all.zip
MacD
la source
1

La tâche 'wrapper' dans gradle est appelée si la commande gradlew est utilisée, si vous utilisez la commande gradle pour construire la tâche wrapper n'est pas appelée. Donc, il existe deux façons de changer votre version de Gradle.

  1. Utilisez la commande 'gradlew build', cette commande appellera la tâche wrapper que vous avez mentionnée. Cette tâche modifiera le paramètre 'distributionUrl' dans le fichier gradle-wrapper.properties et téléchargera automatiquement la version de gradle souhaitée. Exemple distributionUrl dans le fichier de la version 4.2. distributionUrl = https: //services.gradle.org/distributions/gradle-4.2-bin.zip

  2. Si vous n'utilisez pas le wrapper gradle, téléchargez simplement la version du gradle que vous voulez et définissez le chemin de la variable d'environnement et montrez-le également à IDEA.

PS pour plus d'informations sur le wrapper gradle, je vous suggère de lire: https://docs.gradle.org/current/userguide/gradle_wrapper.html

M. Oguz Ozcan
la source
1

J'étais confronté au même problème pour changer la version de gradle par défaut de 5.0 à 4.7, Voici les étapes pour changer la version de gradle par défaut dans intellij 1) Changer la version de gradle dans gradle / wrapper / gradle-wrapper.properties dans cette propriété distributionUrl 2) Appuyez sur le bouton d'actualisation dans le menu des projets gradle afin qu'il commence à télécharger la nouvelle version zip de gradleentrez la description de l'image ici


Saurabh
la source
1

./gradlew wrapper --gradle-version=5.4.1 --distribution-type=bin

https://gradle.org/install/#manually

Vérifier:

 ./gradlew tasks

Pour le saisir sans commande:

aller à-> gradle/wrapper/gradle-wrapper.properties URL de distribution et changez-la en version zip mise à jour

production:

 ./gradlew tasks
Downloading https://services.gradle.org/distributions/gradle-5.4.1-bin.zip
...................................................................................

Welcome to Gradle 5.4.1!

Here are the highlights of this release:
 - Run builds with JDK12
 - New API for Incremental Tasks
 - Updates to native projects, including Swift 5 support

For more details see https://docs.gradle.org/5.4.1/release-notes.html

Starting a Gradle Daemon (subsequent builds will be faster)

> Starting Daemon 

la source
1

En build.gradleplus wrapper { gradleVersion = '6.0' }

Kreker
la source
0

Tout d'abord, laissez gradle définir l'URL de distribution correcte

cd projectDirectory
./gradlew wrapper --gradle-version 2.3.0

Ensuite - peut-être pas nécessaire mais c'est ce que j'ai fait - éditez le build.gradle du projet pour qu'il corresponde à la version

    dependencies {
    classpath 'com.android.tools.build:gradle:2.3.0'

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

Enfin, supprimez les dossiers .gradle et gradle et les fichiers gradlew et gradlew.bat. ( Réponse originale )

Maintenant, reconstruisez le projet.

Comme les autres réponses ne me suffisaient pas et que le commentaire soulignant ces étapes supplémentaires est facile à ignorer, ici en tant que réponse séparée

Lucidbrot
la source