the plugin found for current java jetty maven-2 maven-jetty-plugin

java - plugin - maven jetty server



¿Cómo controlar los argumentos de VM para maven-jetty-plugin? (10)

¿Cómo establecer argumentos de VM para Jetty desde maven-jetty-plugin?

Por ejemplo, necesito pasar los argumentos -Xmx a Jetty ejecutados por el mvn jetty:run .


¿Qué tal: mvn -DMAVEN_OPTS=-Xmx1024m jetty:run



El <jvmArgs> mencionado aquí: el complemento de Maven <jvmArgs> no funcionó para mí.

Versión de Maven: Apache Maven 3.0.3

Versión del plugin de Jetty Maven: jetty-maven-plugin: 8.1.10.v20130312

Esto funcionó:

MAVEN_OPTS=''-Xmx4096m -Xms4096m'' export MAVEN_OPTS mvn jetty:run &


El plugin te permite especificar jvmArgs así:

<plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <configuration> <jvmArgs>-Xmx1024</jvmArgs> <scanIntervalSeconds>10</scanIntervalSeconds> <connectors> <connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector"> <port>8080</port> <maxIdleTime>60000</maxIdleTime> </connector> </connectors> <webAppConfig> <jettyEnvXml>jetty-env.xml</jettyEnvXml> </webAppConfig> </configuration> <executions> <execution> <phase>test</phase> <goals> <goal>run-exploded</goal> </goals> </execution> </executions> </plugin>


En Linux / Unix

export MAVEN_OPTS="-Xmx256m" && mvn clean install jetty:run

hará el truco


No hay manera de usar la línea de comandos. Pero puedes copiar mvn.cmd / mvn.sh a mvnhp.cmd y cambiar la línea

%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%/bin/m2.conf" "-Dmaven.home=%M2_HOME%" "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%

A

%MAVEN_JAVA_EXE% -Xmx1024m %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %CLASSWORLDS_JAR% "-Dclassworlds.conf=%M2_HOME%/bin/m2.conf" "-Dmaven.home=%M2_HOME%" "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%


Para especificar argumentos vm a través de la línea de comando (como se solicitó originalmente), puede hacer lo siguiente:

mvn clean install -DargLine="-Xmx1524m"


Parece que su enfoque actual es correcto: cuando se ejecuta Jetty a través de Maven, Jetty es un hilo dentro del proceso de Maven. Así que aumentar el montón de Maven aumentará el montón de embarcadero.

¿Cómo estás configurando MAVEN_OPTS?

Un ejemplo que encontré se ve así: MAVEN_OPTS=''-Xmx256m -Xms10m'' mvn clean jetty:run

Tenga en cuenta que MAVEN_OPTS es una variable de entorno aquí, y no se pasa a la JVM (quien no sabría qué hacer con ella).


puedes usar para pasar el argumento -Xmx como;

<plugin> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version></version> <configuration> <jvmArgs>-Xmx -Xms -XX:PermSize= -XX:MaxPermSize= -XX:+HeapDumpOnOutOfMemoryError</jvmArgs> <scanIntervalSeconds>1</scanIntervalSeconds> <stopKey>stop-jetty</stopKey> <stopPort>9999</stopPort> <systemProperties> <systemProperty> <name>jetty.port</name> <value>9090</value> </systemProperty> <systemProperty> <name>spring.profiles.active</name> <value></value> </systemProperty> </systemProperties> <webApp> <contextPath>/</contextPath> </webApp> </configuration> </plugin>


La variable de entorno MAVEN_OPTS es la respuesta. El contenido de la cadena de MAVEN_OPTS se pasa a JVM (java.exe).

  • Linux: en tipo de shell export MAVEN_OPTS=....
  • Windows: en el tipo de shell (cmd.exe) set MAVEN_OPTS=...

Por ejemplo: en el set MAVEN_OPTS="-Xmx1024m" Windows set MAVEN_OPTS="-Xmx1024m" establece el tamaño del montón del proceso de Maven a 1024 mb.

Actualización (01.04.2013): Pásala directamente a Jetty.

Matthew Farwell (por favor, vote por su respuesta para darle crédito) viene con la solución de usar un proceso JVM bifurcado para ejecutar Jetty, que es una nueva característica del complemento Jetty . Esta es una mejor solución ya que la primera se ejecuta dentro del mismo proceso JVM que Maven (por lo tanto, comparte memoria).