J'ai regardé autour de moi et je n'ai trouvé aucun moyen d'accéder aux variables d'environnement dans mon gradle.properties.
Ce que je peux faire: Dans mon build.gradle, je peux accéder à des variables d'environnement comme celle-ci System.getenv ("MY_VAR")
. J'aimerais faire la même chose dans mon gradle.properties.
Exemple de ce que je veux faire: Dans mon gradle.properties, remplacez build.foo = bar
par build.foo = System.getenv ("BAR ")
Jusqu'à présent, toutes mes tentatives d'accès aux variables d'environnement à partir de gradle.properties ont échoué.
Tout aperçu de la question serait formidable, merci!
3 Réponses :
je n'ai trouvé aucun moyen d'accéder aux variables d'environnement dans mon gradle.properties.
Vous ne pouvez pas. gradle.properties
n'a rien d'extraordinaire, c'est un fichier de propriétés standard .
Vous devrez post-traiter les propriétés d'une manière ou d'une autre comme indiqué dans ceci . Actuellement, Gradle n'offre aucune fonctionnalité de ce type pour le "chargement personnalisé" gradle.properties
.
Toutes les variables d'environnement ne sont pas visibles à la gradation. Si vous pouvez les nommer avec le préfixe spécial ORG_GRADLE_PROJECT_
, ceux-ci seront disponibles. Vous pouvez en lire ici
ORG_GRADLE_PROJECT_foo
est accessible en tant que foo
dans gradle.
Votre déclaration est vraie en ce que seules les variables env spécialement nommées sont automatiquement chargées dans les propriétés internes de gradle. Mais vous pouvez explicitement utiliser System.getEnv ('ENV_VAR ") pour charger n'importe quelle variable d'environnement dans des scripts gradle.
Depuis https://docs.gradle.org/current/userguide/build_environment. html "... mais si une option est configurée à plusieurs endroits, la première l'emporte:
propriétés système, par exemple lorsque -Dgradle.user.home est défini sur la ligne de commande. "
Sous Unix, vous pouvez faire comme ceci: -Dgradle.user.home = $ GRADLE_USER_HOME