web-dev-qa-db-fra.com

Comment écrire correctement un fichier gradle-wrapper.properties?

Quelqu'un peut-il me dire, s'il vous plaît, s'il y a un quelconque avantage de Gradlew sur Gradle?

De plus, j'ai des doutes sur le fichier gradle-wrapper.properties.

Au début, quand j'ai couru

C:\project_basedir>gradle wrapper

J'ai trouvé le contenu suivant dans le fichier gradle-wrapper.properties.

#Thu Jun 12 17:06:10 IST 2014
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-1.12-bin.Zip

Pour arrêter de télécharger le fichier Zip, j'ai suivi les étapes suggérées au chapitre 61.1. Configuration of gradle documentation et ajout du fichier gradle-1.12-bin.Zip de mon installation de gradle local dans le répertoire <Project_Base>\gradle\wrapper. et modifié les fichiers de propriétés comme suit:

#Thu Jun 12 17:06:10 IST 2014
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=gradle-1.12.Zip

Cela économise du temps de téléchargement.

Ma structure d'installation Gradle est comme ci-dessous:

C:\Users\sanjeev\Softwares\Gradle\gradle-1.12\bin

J'ai défini la propriété système GRADLE_USER_HOME dans mon répertoire installtion local, c'est-à-dire C:\Users\sanjeev\Softwares\Gradle\gradle-1.12. Mais les options distributionBase & distributionPath ne sélectionnent pas la valeur.

J'ai même essayé de modifier les valeurs comme:

distributionBase=file://C://Users//sanjeev//Softwares//Gradle//gradle-1.12

Cela n'a pas fonctionné.

Exception in thread "main" Java.lang.RuntimeException: Base: file:/C:/Users/sanjeev/Softwares/Gradle/gradle-1.12 is unknown

Quelqu'un peut-il s'il vous plaît suggérer ce qui me manque ici?

Ou en quelques mots, comment définir distributionBase, distributionPath, zipStoreBase et zipStorePath correctement?

8
sanjeev

L'avantage de graduel par rapport à autre est que:

  1. Vous n'avez pas besoin d'installer gradle sur votre machine pour construire votre projet.
  2. Vous pouvez contrôler quelle version de gradle est nécessaire pour construire votre projet.

Je ne suis pas sûr de l'intérêt de modifier l'URL de la distribution dans le fichier de propriétés. L’intérêt du wrapper est qu’il télécharge gradle. Si vous l'obtenez localement, vous pouvez également installer et utiliser gradle à la place. De toute façon, le wrapper ne téléchargera qu'une fois la distribution et la stockera pour chaque utilisateur (d'où l'utilisation de GRADLE_USER_HOME).

GRADLE_USER_HOME est une propriété d'environnement, pas une propriété système. Si vous souhaitez modifier le domicile de l'utilisateur de gradle à l'aide des propriétés système, vous devez définir 'gradle.user.home'.

12
mikea

Le meilleur moyen d'obtenir un fichier gradle-wrapper.properties approprié consiste à exécuter la tâche d'encapsulation à l'aide de gradle wrapper. Mais cela nécessite une installation locale. Lorsque vous modifiez manuellement le contenu de ce fichier, vous devez être prudent avec l'échappement. Essayez ceci distributionUrl:

distributionUrl=file\://gradle/wrapper/gradle-1.12-bin.Zip

Encore un commentaire: il peut être plus facile à gérer si vous placez votre installation de gradle dans un référentiel de corbeille local (par exemple, dans votre référentiel de lien ou artificiel) et laissez gradlew télécharger la corbeille de gradation référencée à partir de là. L'avantage est qu'il vous suffit de mettre à jour l'URL de distribution.

2
Rene Groeschke

Si vous essayez de changer votre wrapper distributionUrl pour qu'il pointe vers votre fichier Gradle.Zip local.

(Sans espaces) Changez-le en file \: ///C:\Users\sanjeev\Softwares\Gradle\gradle-1.12.Zip (le nom du fichier gradle-1.12.Zip doit être identique comme il est dans votre PC.)

0
Guru Surend