332 votes

Différence entre l'utilisation de gradlew et gradle

Quelle est la différence entre utiliser gradlew y gradle ou sont-ils les mêmes ?

321voto

Abhijit Points 2399

La différence réside dans le fait que ./gradlew indique que vous utilisez un wrapper gradle. Le wrapper fait généralement partie d'un projet et il facilite l'installation de gradle. Si vous utilisiez gradle sans le wrapper, vous devriez l'installer manuellement - par exemple, sur un MAC brew install gradle puis invoquez gradle en utilisant l'option gradle commande. Dans les deux cas, vous utilisez gradle, mais le premier est plus pratique et assure la cohérence des versions sur différentes machines.

Chaque Wrapper est lié à une version spécifique de Gradle. commande ci-dessus pour une version donnée de Gradle, elle téléchargera la téléchargera la distribution Gradle correspondante et l'utilisera pour exécuter la construction.

Non seulement cela signifie que vous n'avez pas à installer manuellement Gradle vous-même, mais vous êtes également sûr d'utiliser la version de Gradle pour laquelle la version est conçu pour. Cela rend vos constructions historiques plus fiables.

Plus d'informations ici - https://docs.gradle.org/current/userguide/gradle_wrapper.html

Udacity propose également une vidéo de haut niveau expliquant le concept du wrapper gradle. https://www.youtube.com/watch?v=1aA949H-shk

11 votes

Peut-être que je le lis mal, mais cela ressemble à un drapeau rouge pour moi. Il semble que Gradle ne soit pas rétrocompatible ou qu'il évolue très rapidement (et de manière instable). Que se passe-t-il avec les serveurs CI qui n'ont pas accès à l'internet ?

0 votes

@TheImpaler Je suppose que vous devez installer toutes les versions requises de Gradle comme le ferait le Wrapper s'il avait accès à Internet.

0 votes

Donc une conclusion en une ligne pourrait être : toujours préférer ./gradlew build sur gradle build n'est-ce pas ?

105voto

yoAlex5 Points 2350

gradle vs gradlew

gradlew est un wrapper(w - caractère) qui utilise gradle .

Sous le capot gradlew réalise trois choses principales :

  • Téléchargez et installez le bon gradle version
  • Analyser les arguments
  • Appelez un gradle tâche

En utilisant Gradle Wrapper, nous pouvons distribuer/partager un projet à tout le monde pour utiliser la même version et les fonctionnalités de Gradle (compiler, construire, installer...) même s'il n'a pas été installé.

Pour créer un wrapper, exécutez :

gradle wrapper

Cette commande génère :

gradle-wrapper.properties contiendra les informations sur la distribution de Gradle

* ./ Est utilisé sous Unix pour spécifier le répertoire actuel

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X