La taille libre n'augmente pas Maven
-
09-10-2019 - |
Question
Quand je lance maven-plugin-jetée, je lance la commande suivante:
mvn -DMAVEN_OPTS="-Xmx1024m -Xms512m" -Djetty.port=8080 jetty:run
mais lorsque je tente de la taille du tas libre de sortie avec
Long heapFreeSize = Runtime.getRuntime().freeMemory();
Il toujours quelque chose au sujet des sorties à propos 30000000.
Je suppose que la taille de ce en octets, donc environ 30 méga-octets.
Pourquoi la mémoire de tas libre n'a pas augmenté?
La solution
MAVEN_OPTS
est une variable d'environnement, qui est lu par Maven et utilisé comme les arguments de ligne de commande pour bifurquer les processus Java. arguments de ligne de commande contrôlent la façon dont l'exécutable Java est démarré, par exemple des trucs comme paramètres de mémoire.
-D
est utilisé pour la mise en Java Propriétés système, ce qui est quelque chose de complètement différent que les arguments de ligne de commande. Java Propriétés système peut être lu par programmation, par exemple en utilisant System.getProperties ().
Windows:
SET MAVEN_OPTS="-Xmx1024m -Xms512m"
mvn -Djetty.port=8080 jetty:run
Linux:
export MAVEN_OPTS="-Xmx1024m -Xms512m"
mvn -Djetty.port=8080 jetty:run
Autres conseils
Je pense que -DMAVEN_OPTS = « - Xmx1024m -Xms512m » n'est pas bonne façon de spécifier params mémoire ici.
Définir une variable d'env appelée MAVEN_OPTS avec le contenu "-Xmx1024m -Xms512m"