Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

1.3K
Views
Java 17 con Maven Wrapper da como resultado la opción de máquina virtual no reconocida 'MaxPermSize=512m'

Uso OpenJDK 17 con Maven Wrapper 3.8.2 de Spring Initializr (proyecto Maven, empaque JAR, Java 17, Spring Boot 2.6.0). Sin dependencias adicionales.

 user@DESKTOP-U2OU5HG MINGW64 /c/Projects/my-project (master) $ java -version openjdk version "17" 2021-09-14 OpenJDK Runtime Environment (build 17+35-2724) OpenJDK 64-Bit Server VM (build 17+35-2724, mixed mode, sharing)

Al ejecutar cualquiera de ./mvnw.cmd -version o ./mvnw.cmd clean install , siempre recibo el siguiente mensaje:

 Unrecognized VM option 'MaxPermSize=512m' Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit.

Cambiar a OpenJDK 16.0.2 resuelve el problema, sin embargo, necesito trabajar con Java 17.

¿Cómo hacerlo funcionar? No hay ningún MaxPermSize=512m establecido.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

De hecho -XX:MaxPermSize=size está etiquetado de la siguiente manera según las especificaciones de la herramienta Java® Development Kit versión 16/17 (consulte los enlaces):

  • Para Java 16 está obsoleto .
  • Para Java 17 se elimina .

Sin embargo, Maven Wrapper en el script mvnw.cmd , además del JAVA_HOME requerido, también usa un montón de variables de entorno opcionales como M2_HOME y estas comienzan con el prefijo MAVEN_ .

El importante es MAVEN_OPTS , donde puede aparecer una opción de Java eliminada que provoque la imposibilidad de iniciar la JVM en la versión más nueva. En mi caso, tuve algo como:

 MAVEN_OPTS="-Xmx4g -XX:MaxPermSize=512m -Dfile.encoding=UTF-8 -Djavax.xml.accessExternalSchema=all"

La solución es eliminar la opción de las variables de entorno o agregar esta línea al script Maven Wrapper para anular el valor MAVEN_OPTS , en la forma mínima:

 MAVEN_OPTS=
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!