Vous le générez une fois de plus lorsque vous souhaitez modifier la version de Gradle que vous utilisez dans le projet. Il n'est pas nécessaire de générer si souvent. Voici les documents. Ajoutez simplement une wrapper
tâche au build.gradle
fichier et exécutez cette tâche pour obtenir la structure de l'encapsuleur.
N'oubliez pas que Gradle doit être installé pour générer un wrapper. SDKMAN est un excellent outil pour gérer les artefacts de l'écosystème g! . Pour générer un wrapper gradle, ajoutez le morceau de code suivant au build.gradle
fichier:
task wrapper(type: Wrapper) {
gradleVersion = '2.0' //version required
}
et courir:
gradle wrapper
tâche. Ajoutez les fichiers résultants à SCM (par exemple git) et à partir de maintenant tous les développeurs auront la même version de Gradle lors de l'utilisation de Gradle Wrapper.
Avec Gradle 2.4 (ou supérieur), vous pouvez configurer un wrapper sans ajouter de tâche dédiée:
gradle wrapper --gradle-version 2.3
ou
gradle wrapper --gradle-distribution-url https://myEnterpriseRepository:7070/gradle/distributions/gradle-2.3-bin.zip
Tous les détails peuvent être trouvés ici
De l' 3.1
--distribution-type
option Gradle peut également être utilisée. Les options sont binaires et tout et bin . tous contiennent en outre du code source et de la documentation. tout est également meilleur lorsque l'IDE est utilisé, donc l'éditeur fonctionne mieux. L'inconvénient est que la construction peut durer plus longtemps (besoin de télécharger plus de données, inutile sur le serveur CI) et cela prendra plus d'espace.
Ce sont des fichiers Gradle Wrapper. Vous devez les générer une fois (pour une version particulière) et les ajouter au contrôle de version. Si vous devez changer la version de Gradle Wrapper, changez la version dans build.gradle
voir (1.) et régénérez les fichiers.
Donnez un exemple détaillé. Ce fichier peut avoir plusieurs objectifs: projet multi-module, séparation des responsabilités, script légèrement modifié, etc.
settings.gradle
est plutôt responsable de la structure du projet (modules, noms, etc.), tandis que, gradle.properties
est utilisé pour les détails externes du projet et de Gradle (version, arguments de ligne de commande -XX
, propriétés, etc.)
build.gradle
script en plusieurs plus courts et consacrés à des scripts à usage particulier. Comme vous pouvez le script situé sous gradle dir a appliqué aubuild.gradle
fichier principal , consultez: github.com/Netflix/eureka/blob/master/build.gradle . L'endroit où vous placez ces modules est de votre choix. C'est tout en général. Si vous êtes satisfait de la réponse, veuillez accepter la réponse :)--distribution-type
, par exemple,gradle wrapper --gradle-version 4.3.1 --distribution-type ALL
Génération du Gradle Wrapper
Projet de construction gradle
Ensuite, lors de l'exécution en ligne de commande
Si vous manquez gradle sur votre système, installez-le ou ce qui précède ne fonctionnera pas. Sur un Mac, il est préférable d'installer via Homebrew.
Après avoir correctement exécuté la tâche wrapper et généré
gradlew
, n'utilisez pas votre gradle système. Cela vous évitera beaucoup de maux de tête.Qu'en est-il du plugin Gradle vu ci-dessus?
Vous devez définir la version pour être la dernière et vous pouvez consulter la page des outils et modifier la version en conséquence.
Découvrez ce que génère Android Studio
L'ajout de gradle et du plus récent Android Studio a radicalement changé la disposition du projet. Si vous avez un projet plus ancien, je vous recommande vivement d'en créer un propre avec le dernier Android Studio et de voir ce que Google considère comme le projet standard.
Android Studio possède des fonctionnalités pour importer des projets plus anciens qui peuvent également aider.
la source
gradleVersion = '2.2'
entaskWrapper
peut utiliser la version que je souhaite pour générer le wrapper, correct? Ne doit-il pas nécessairement s'agir de la dernière version de gradle?Depuis Gradle 2.4, vous pouvez utiliser
gradle wrapper --gradle-version X.X
pour configurer une version spécifique du wrapper Gradle, sans ajouter de tâches à votrebuild.gradle
fichier. La prochaine fois que vous utiliserez le wrapper, il téléchargera la distribution Gradle appropriée pour correspondre.la source
Si vous souhaitez télécharger gradle avec la source et les documents, l'URL de distribution par défaut configurée dans gradle-wrapper.properites ne satisfera pas votre besoin.Il s'agit de https://services.gradle.org/distributions/gradle-2.10-bin.zip , pas https://services.gradle.org/distributions/gradle-2.10-all.zip .Cette URL complète est suggérée par IDE comme Android Studio.Si vous souhaitez télécharger le grade complet, vous pouvez configurer la tâche d'encapsuleur comme ceci :
la source
Il s'agit de la commande à utiliser pour indiquer à Gradle de mettre à niveau le wrapper de telle sorte qu'il récupère les versions de distribution des bibliothèques qui incluent le code source:
Si vous spécifiez le type de distribution avec "all", Gradle téléchargera les fichiers source à utiliser par votre environnement de développement.
Avantages :
Inconvénients :
Veuillez commenter ou fournir une autre réponse si vous connaissez une option de ligne de commande pour dire à Gradle de ne pas télécharger les sources sur un serveur de build.
la source
Vous les générerez une fois, mais mettez-les à jour si vous avez besoin d'une nouvelle fonctionnalité ou de quelque chose d'un plugin qui à son tour a besoin d'une nouvelle version gradle.
Mise à jour la plus simple: à partir de Gradle 2.2, vous pouvez simplement télécharger et extraire la distribution Gradle complète ou binaire , et exécuter:
Pas besoin de définir une tâche, même si vous avez probablement besoin d'une sorte de
build.gradle
fichier.Cela mettra à jour ou créera le wrapper
gradlew
etgradlew.bat
ainsi quegradle/wrapper/gradle-wrapper.properties
legradle-wrapper.jar
pour fournir la version actuelle de gradle, enveloppée.Tout cela fait partie de l'emballage.
Certains
build.gradle
fichiers font référence à d'autres fichiers ou fichiers dans des sous-répertoires qui sont des sous-projets ou modules. Cela devient un peu compliqué, mais si vous avez un projet, vous avez essentiellement besoin d'un seul fichier.settings.gradle
gère le projet, le module et d'autres types de noms et de paramètres,gradle.properties
configure les variables réutilisables pour vos fichiers Gradle si vous le souhaitez et vous pensez qu'ils seraient plus clairs de cette façon.la source
Comme les tâches intégrées de Gradle sont obsolètes en 4.8, essayez ci-dessous
et courir
la source