~/.gradle/gradle.fichier de propriétés ne sont pas lues
Il y a une question similaire ici: Gradle propriétés ne sont pas lues à partir de ~/.gradle/gradle.propriétés mais cela ne résout pas mon problème.
Il me semble que gradle est PAS la lecture de mon ~/.gradle/gradle.properties
fichier.
J'ai un gradle.fichier de propriétés dans ~/.gradle
, et il a des propriétés nécessaires pour signer des artefacts avant de les télécharger sur maven central. Il ressemble à ceci:
signing.keyId=12345678
signing.password=myPassword
signing.secretKeyRingFile=/home/me/.gnupg/secring.gpg
sonatypeUsername=me
sonatypePassword=myOtherPassword
Quand j'essaie de construire mon projet, il se plaint qu'il n'y a pas de sonatypeUsername propriété, donc:
> Could not find property 'sonatypeUsername' on root project 'yourProject'.
Voici la partie pertinente de mon projet de construction.gradle:
uploadArchives {
repositories {
mavenDeployer {
//lots of non-interesting things here
repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") {
authentication(userName: project.property("sonatypeUsername"), password: project.property("sonatypePassword"))
}
}
}
}
Quand j'essaie de compiler le projet avec le débogage, voici ce que je vois concernant les propriétés:
$ ./gradlew --stacktrace --debug build
[INFO] [o.g.BuildLogger] Starting Build
[DEBUG] [o.g.BuildLogger] Gradle user home: /home/me
[DEBUG] [o.g.BuildLogger] Current dir: /home/me/dev/yourProject
[DEBUG] [o.g.BuildLogger] Settings file: null
[DEBUG] [o.g.BuildLogger] Build file: null
[DEBUG] [o.g.i.b.BuildSourceBuilder] Starting to build the build sources.
[DEBUG] [o.g.i.b.BuildSourceBuilder] Gradle source dir does not exist. We leave.
[DEBUG] [o.g.i.DefaultGradlePropertiesLoader] Found env project properties: []
[DEBUG] [o.g.i.DefaultGradlePropertiesLoader] Found system project properties: []
[DEBUG] [o.g.a.i.a.m.DefaultLocalMavenRepositoryLocator] No local repository in Settings file defined. Using default path: /home/me/.m2/repository
[DEBUG] [o.g.i.ScriptEvaluatingSettingsProcessor] Timing: Processing settings took: 0.286 secs
[INFO] [o.g.BuildLogger] Settings evaluated using empty settings script.
[DEBUG] [o.g.i.ProjectPropertySettingBuildLoader] Looking for project properties from: /home/me/dev/yourProject/gradle.properties
[DEBUG] [o.g.i.ProjectPropertySettingBuildLoader] project property file does not exists. We continue!
[INFO] [o.g.BuildLogger] Projects loaded. Root project using build file '/home/me/dev/yourProject/build.gradle'.
env | grep GRADLE_USER_HOME
retourne rien?oui: GRADLE_USER_HOME=/home/moi
Est le
.gradle
répertoire à /home/me/.gradle/
? En d'autres termes, est HOME
aussi /home/me
?oui, et oui. en réalité, ce n'est pas "moi", c'est mon nom d'utilisateur réel.. mais oui, j'ai mis en GRADLE_USER_HOME égale à la MAISON
Je n'ai pas de
GRADLE_USER_HOME
définir et mettre juste gradle.properties
sous $HOME/.gradle
. Tout fonctionne ok.OriginalL'auteur John Ruiz | 2015-02-03
Vous devez vous connecter pour publier un commentaire.
Le problème est que j'ai fait une hypothèse qui n'était pas vrai. Si vous regardez l'article 14.2 de la documentation gradle, il dit:
Mon incorrect hypothèse était que USER_HOME juste, par défaut, le standard de linux variable d'environnement HOME. Ce n'est pas vrai.
Dès que j'ai
export USER_HOME=$HOME
dans mon~/.bashrc
tout fonctionne$HOME/.gradle
dans le passé sans problèmes.Oui, je suis sous Linux Mint. Elle est étranger... une fois j'ai été en mesure de construire avec succès, j'ai enlevé l'instruction d'exportation à partir de mon ~/.bashrc et redémarré. Maintenant, gradle construit mon projet avec succès ou non USER_HOME est réglé.
Après une conversation avec gradle les gens, je ne sais pas pourquoi cela m'est arrivé, mais jusqu'à présent, ma réponse se trouve. Voici la conversation: forums.gradle.org/gradle/topics/...
désolé d'acheter votre lien doc ne sont pas disponibles sur gradle site
Cela a fonctionné pour moi, même sur Mac. J'ai juste eu à redémarrer Andorid Studio et mondial gradle.propriétés a commencé à montrer.
OriginalL'auteur John Ruiz
Un rapide et sale solution est de simplement mettre le gradle.propriétés à droite à côté de votre construction.gradle, qui permettra de garantir qu'il sera lu. Je me rends compte que cela ne résout pas une seule source centralisée des propriétés communes, mais au moins c'est quelque chose.
Quand même cela ne fonctionne pas pour moi, j'ai réalisé que j'avais le mal de capitalisation sur la propriété qui "n'était pas en cours de lecture".
OriginalL'auteur WillBD
Par défaut, sans
GRADLE_USER_HOME
, il devrait fonctionner. Je l'ai testé env3.5
.Mais assurez-vous si votre sont en cours d'exécution comme le droit de l'utilisateur. Par ex, si vous faites votre
./gradlew build
à l'aide desudo
, puisgradle.properties
dans votre dossier d'accueil ne seront pas ramassés.Assurez-vous que le défaut gradle d'accueil de l'utilisateur, vous pouvez exécuter gradle avec le
--debug
option et regarder dehors pour la ligne ci-dessous,OriginalL'auteur Kannan Ramamoorthy