Sobes.tech
Junior — Middle

Ce argumente de linie de comandă sunt disponibile pentru configurarea JVM-ului la pornirea unei aplicații Java?

sobes.tech AI

Răspuns de la AI

La JVM la startup a unei aplicații Java poate fi configurată folosind diferiți argumente din linia de comandă care influențează comportamentul mașinii virtuale. Categoriile principale de argumente:

  • Configurarea memoriei:

    • -Xms<size> — dimensiunea inițială a heap-ului, de exemplu, -Xms512m
    • -Xmx<size> — dimensiunea maximă a heap-ului, de exemplu, -Xmx1024m
    • -Xss<size> — dimensiunea stivei pentru fiecare thread
  • Configurarea colectorului de gunoi:

    • -XX:+UseG1GC — activare G1
    • -XX:+UseConcMarkSweepGC — activare CMS
    • -XX:+UseParallelGC — activare colector paralel
  • Depanare și monitorizare:

    • -Xdebug — activare mod de depanare
    • -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 — configurare depanare la distanță
    • -XX:+PrintGCDetails — afișare informații detaliate despre colectarea gunoiului
  • Optimizarea performanței:

    • -XX:MaxPermSize=<size> (pentru versiuni mai vechi de JVM) — dimensiunea generației permanente
    • -XX:+UseStringDeduplication — deduplicarea șirurilor (pentru G1)
  • General:

    • -D<nume>=<valoare> — setare proprietăți de sistem
    • -verbose:gc — afișare detaliată despre colectarea gunoiului

Exemplu de pornire cu configurare de memorie și activare G1:

java -Xms512m -Xmx2g -XX:+UseG1GC -Dconfig.file=app.properties -jar myapp.jar