¿Cómo cambio los parámetros de tiempo de ejecución de Java?


16

En Windows, podría cambiar la cantidad de RAM que Java podría usar escribiendo algo como -Xincgc -Xmx2048M en los Parámetros de tiempo de ejecución de Java. ¿Cómo puedo hacer eso en Ubuntu?

Respuestas:


6

Si no me equivoco, son los mismos en Linux. Con el comando Java tienes las 2 opciones:

  • Xmx establece el tamaño máximo de almacenamiento dinámico de memoria.
  • Xms establece el tamaño mínimo de almacenamiento dinámico de memoria.

Hacerlo -Xmx1024m -Xms128mdebería funcionar.

Aquí hay un extracto de hacer un man javaen la terminal

-Xmsn
                Specify the initial size, in bytes, of the memory allocation
                pool. This value must be a multiple of 1024 greater than 1MB.
                Append the letter k or K to indicate kilobytes, or m or M to
                indicate megabytes. The default value is chosen at runtime
                based on system configuration. For more information, see
                HotSpot Ergonomics
                Examples:

                       -Xms6291456
                       -Xms6144k
                       -Xms6m

 -Xmxn
                Specify the maximum size, in bytes, of the memory allocation
                pool. This value must a multiple of 1024 greater than 2MB.
                Append the letter k or K to indicate kilobytes, or m or M to
                indicate megabytes. The default value is chosen at runtime
                based on system configuration. For more information, see
                HotSpot Ergonomics
                Examples:

                       -Xmx83886080
                       -Xmx81920k
                       -Xmx80m

Así que básicamente resume las dudas usando los mismos parámetros.

Para usar esto, vaya a un terminal y escríbalo con un programa jar. En mi ejemplo estoy usando el servidor de Minecraft: java -Xms1024M -Xmx2048M -jar minecraft.jar.

Aquí hay una imagen de lo que sucede:

ingrese la descripción de la imagen aquí

Debo señalar que los parámetros son sensibles a mayúsculas y minúsculas . Entonces xmx1024M no es lo mismo que Xmx1024M.


Bueno, no pregunté qué parámetros debería usar. Le pregunté dónde debería escribir los parámetros. Si escribo -Xmx1204m -Xms128m, dice comando desconocido.
— Andri

Por su pregunta, parecía que ya sabía dónde escribirlos, ya que los estaba usando. Lo siento. Actualicé la respuesta para incluir una imagen de la salida del comando y la línea de comando completa para java y parámetros. Todo esto está escrito desde la terminal.
— Luis Alvarado

10

Lo mismo se aplica en Linux. Si desea que las opciones sean permanentes, puede exportar la JAVA_OPTSvariable de entorno.

Recomiendo hacerlo por usuario. Modifique el .profilearchivo en su directorio de inicio (o .bash_profilesi existe y usa bash) para incluir esta línea:

export JAVA_OPTS='-Xincgc -Xmx2048M'

Después de configurar esto, debe reiniciar las sesiones de shell para que se aplique.

Alternativamente, también puede modificar el perfil de todo el sistema en / etc / profile.

Editar: la configuración del complemento del navegador Java se define en el Panel de control de Java: http://docs.oracle.com/javase/1.4.2/docs/guide/plugin/developer_guide/control_panel.html .


¿Cómo se aplica lo mismo a Linux? No puedo ir al Panel de control, abrir Java y cambiar la configuración. ¿Qué debo hacer?
— Andri

1
Si no me equivoco, ese panel de control se aplica solo al complemento de Java para el navegador. Si eso es lo que busca, se encuentra en / jre / bin / ControlPanel ( docs.oracle.com/javase/1.4.2/docs/guide/plugin/developer_guide/… )
— jjmontes

Eso no es lo que quise decir. Todo lo que necesito saber es cómo podría hacer que Java pueda usar más RAM de la que usa ahora.
— Andri
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.