Trouver des options Java utilisé par Maven
Comment puis-je trouver les options Java (Xmx, Xms, Xss, etc) sont en train d'être utilisé par Maven?
J'ai trouvé qu'un moyen de ensemble est par l'environnement MAVEN_OPTS. Maintenant, je veux un moyen d'être assuré qu'il est d'obtenir le bon réglage.
EDIT: je crois que c'est différent pour cette question que je ne veux pas voir la valeur d'une variable d'environnement. J'ai plutôt envie de voir les paramètres qui sont effectivement utilisé par Maven, qu'il provienne d'un env var, settings.xml ou par d'autres moyens.
EDIT2: je suis aussi intéressé par d'autres moyens de réglage options Java pour un Maven build
Double Possible de Comment imprimer la réelle MAVEN_OPTIONS qui sont utilisés?
Vous êtes seulement intéressés à voir comment faire pour vérifier les options de Maven utilisé ou aussi dans d'autres façons de paramètres les mêmes options?
oui je suis également intéressé par d'autres moyens, merci
J'ai mis à jour ma réponse, vérifiez en bas, j'ai trouvé un moyen d'obtenir de vérifier si l'option a été repris correctement. L'espoir peut aider
En outre, vous voudrez probablement à partir de Java, qui est invoquée par Maven (développé en Java), donc cette réponse en combinaison avec l'approche que je propose de vous donner plus d'aide. Je vais mettre à jour ma réponse en conséquence
Vous êtes seulement intéressés à voir comment faire pour vérifier les options de Maven utilisé ou aussi dans d'autres façons de paramètres les mêmes options?
oui je suis également intéressé par d'autres moyens, merci
J'ai mis à jour ma réponse, vérifiez en bas, j'ai trouvé un moyen d'obtenir de vérifier si l'option a été repris correctement. L'espoir peut aider
En outre, vous voudrez probablement à partir de Java, qui est invoquée par Maven (développé en Java), donc cette réponse en combinaison avec l'approche que je propose de vous donner plus d'aide. Je vais mettre à jour ma réponse en conséquence
OriginalL'auteur Vituel | 2016-01-12
Vous devez vous connecter pour publier un commentaire.
Vous pouvez définir les options Java pour Maven en différents points et de niveau (globalement ou par l'intermédiaire de configuration des plugins):
De configuration du Plugin: juste pour la Compilation
À l'aide de la Maven Compilateur Plugin de configuration pour la compilation de code de l'application et le code de test, vous pouvez régler le Xmx, Xms, Xss options via le
compileArgs
entrée de configuration, disponible pour les deux compiler et testCompile objectifs. Un fonctionnaire exemple est disponible ici et sur les autres, de SORTE réponses comme cette une.Un exemple est également illustré ci-dessous sur le troisième point.
De configuration du Plugin: juste pour de l'exécution des Tests
À l'aide de la Maven Plugin Surefire de configuration pour les tests d'exécutions, vous pouvez définir les options Java pour être utilisé lors de l'exécution via le
argLine
entrée de configuration de la test objectif. Un fonctionnaire exemple est disponible ici.Un exemple est également illustré ci-dessous sur le troisième point.
De configuration du Plugin: via les Propriétés (et profils)
Vous pouvez combiner les deux options ci-dessus (dans le cas de la commune options Java) que la valeur d'une propriété à passer les deux
compileArgs
etargLine
entrée de configuration ou ont des propriétés différentes par configuration (selon vos besoins).À l'aide de propriétés vous donne également deux avantages supplémentaires (sur le haut de la centralisation): vous pouvez utiliser profils puis de le personnaliser en fonction sur les différents comportements souhaités (et l'exemple dans cette SORTE de réponse) et vous pouvez les remplacer par la ligne de commande, comme:
Mondiale/Projet de configuration: le fichier d'Options
Depuis Maven 3.3.1, vous pouvez spécifier vos options dans un
.mvn/jvm.config
fichier par projet. C'est une alternative à MAVEN_OPTS et plus de portée limitée (par projet). Toutefois, puisqu'il est sis un nouveau Maven fonctionnalité, les gens doivent être conscients de cela, sinon de dépannage et d'entretien peuvent être touchés.Global/Env configuration: MAVEN_OPTS
Maven bien connu variable d'environnement pour définir l'exécution globale des options, cependant appliqué à tous les builds Maven partage à l'environnement (par utilisateur).
Lors de l'exécution de Maven avec le
-X
option (debug activé), vous aurez la sortie suivante dans le cadre de votre construction:Mise à jour
Après tout, les exécutée
mvn
de commande est un OS de script. Avoir un coup d'oeil dans Windows, j'ai trouvé la possibilité d'utiliser laMAVEN_BATCH_ECHO
option qui, si elle est activée (valeur fixée àon
), se fera l'écho de toute commande exécutée par le script et en tant que telle aussi l'invocation de lajava
de commande, où vous pouvez voir si vos options (leMAVEN_OPTS
) sont récupérés correctement avec la liste complète des paramètres transmis.Ici est une exécution, je l'ai testé sur Windows:
REMARQUE: le
output.txt
contiennent beaucoup de texte, offrant ainsi à la sortie de la construction et de supplémentairesecho
s exécutions. Dans ce cadre, il a fourni:Comme vous pouvez le voir, le
-Xmx256M
option a été repris correctement. Si le script maven pour les autres OS ne fournit pas cette option, alors vous pouvez simplement ajouter le script (un simpleecho
avant lajava
exécution, montrant la commande, devraient être également assez).Vous pouvez trouver le script maven dans votre dossier d'installation de maven, en vertu de la
bin
sous-dossier.Update2
En outre, depuis Maven est un outil Java après tout, et comme vous pouvez le voir à partir de son script, il invoque la commande java, vous pouvez voir toutes les options disponibles comme l'a suggéré dans ce DONC réponse en modifiant légèrement le script Maven et l'utilisation de la
jinfo
commande qui devrait vraiment vous donner la réponse en fonction de ce que d'autres DONC réponse.OriginalL'auteur A_Di-Matteo
Peut-être que ça aide à démarrer Maven avec des informations détaillées sortie de débogage (debug, je pense?). Sinon, il suffit de faire un
ps aux | grep java
et vérifier les arguments de la procédure (en supposant *nix).OriginalL'auteur C-Otto