Cet article présente la méthode (2 types) d'Eclipse pour modifier le réglage des paramètres JVM et le partage avec vous, comme suit:
Généralement, lorsque vous ne définissez pas les paramètres pertinents pour Eclipse, vous sentirez toujours que le démarrage est lent et qu'il est bon à utiliser. En fait, tant que vous configurez les paramètres pertinents d'Eclipse, il sera considérablement amélioré.
Il y a deux façons:
1. Ouvrez le fichier de configuration Eclipse eclipse.ini et change -xmx (sa valeur représente la mémoire maximale que JVM peut utiliser)
2. Lors de l'exécution du programme Java, sélectionnez Run-> Exécuter Configuration-> Arguments et entrez -xms100m -xmx800m (-xms représente la taille de mémoire allouée lorsque JVM démarre, et -xmx représente la quantité maximale de mémoire qui peut être allouée).
Aujourd'hui, lorsque je testais le document sur une image dans Eclipse, l'erreur suivante a été signalée:
java.lang.outofMemoryError: Java Heap Space
D'après les informations d'exception ci-dessus, nous pouvons voir que la mémoire requise par le JVM a dépassé la mémoire maximale que nous avons allouée à la machine virtuelle. Le problème se transforme donc en comment définir la mémoire maximale de JVM dans Eclipse.
1. Essayez de modifier le fichier eclipse.ini (cette méthode ne fonctionne pas)
Trouvez le fichier eclipse.ini dans le répertoire Eclipse et modifiez le contenu suivant:
-XMS40M-XMX512M
Après l'avoir modifié, redémarrant Eclipse, il a constaté que cela ne fonctionnait pas du tout. Après avoir vérifié certaines informations plus tard, il s'est avéré que l'ensemble de mémoire minimum et maximum ici était pour une utilisation par le JVM. Cette valeur de mémoire contient la mémoire utilisée par Eclipse elle-même.
2. Modifier JDK pour utiliser la mémoire (cette méthode est possible)
Recherchez la fenêtre-> Préférences-> Java-> Installé JRE dans ECLISPE, cliquez sur le bouton Modifier à droite et remplissez les valeurs suivantes dans l'option "Arguments VM par défaut" dans l'interface d'édition.
-XMS64M -XMX128M
3. Modifier les configurations d'exécution (cette méthode est possible)
Cliquez avec le bouton droit sur le code, cliquez sur "Exécuter" -> "Exécuter les configurations" dans l'ordre et remplissez les valeurs suivantes dans "VM Arguments:" dans le paramètre des arguments.
-XMS64M -XMX128M
La mémoire du tas est principalement définie par les paramètres JVM suivants:
| -Xmx512m | Mémoire de tas maximale totale, généralement définie sur 1/4 de mémoire physique |
| -XMS512M | La mémoire de tas totale initiale est généralement réglée aussi grande que la mémoire de tas maximale, il n'est donc pas nécessaire d'ajuster la taille du tas en fonction de l'utilisation actuelle du tas. |
| -Xmn192m | Jeune avec une mémoire de tas, le soleil recommande officiellement 3/8 de l'ensemble du tas |
| Composition de la mémoire du tas | Mémoire totale de tas = Jeune avec mémoire de tas + vieille avec mémoire de tas + persistante avec mémoire de tas |
| Jeune avec un tas de mémoire | L'objet a été mis ici quand il a été créé |
| Plus âgé avec un tas de mémoire | L'objet sera placé ici avant qu'il ne soit réellement recyclé |
| Persistant avec la mémoire du tas | Les fichiers de classe, les métadonnées, etc. sont placés ici |
| -Xx: permsize = 128m | La taille initiale du tas de ceinture persistant |
| -Xx: maxpermSize = 128m | La taille maximale du tas de bande persistante, l'éclipse par défaut est de 256 m. Si vous souhaitez compiler JDK, vous devez le définir pour être très grand car il y a trop de classes. |
4. Interroger le code de mémoire JVM actuel
Ce qui suit est le code pour interroger la taille de mémoire JVM actuelle. Vous pouvez tester si la mémoire JVM changera après les paramètres ci-dessus. Après avoir augmenté les éléments de configuration de la mémoire JVM, il n'est pas nécessaire de redémarrer Eclipse. Le code spécifique est le suivant:
classe publique TestMemory {/ ** * @param args * / public static void main (String [] args) {System. out .println ("Informations de mémoire:" + TomemoryInfo ()); } / ** * Obtenez les informations de mémoire du jvm actuel * * @return * / public static static tomemoryInfo () {runtime currruntime = runtime.getRuntime (); int nfreememory = (int) (currruntime.freememory () / 1024/1024); int ntotalmory = (int) (currruntime.totalmory () / 1024/1024); return nfreememory + "m /" + ntotalmmemory + "m (libre / total)"; }}Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.