Come impostare gli argomenti VM per l'esecuzione del jetty da maven-jetty-plugin?Come controllare gli argomenti VM per maven-jetty-plugin?
Ad esempio, ho bisogno di passare gli argomenti -Xmx
a Jetty eseguito dal comando mvn jetty:run
.
Come impostare gli argomenti VM per l'esecuzione del jetty da maven-jetty-plugin?Come controllare gli argomenti VM per maven-jetty-plugin?
Ad esempio, ho bisogno di passare gli argomenti -Xmx
a Jetty eseguito dal comando mvn jetty:run
.
La variabile ambientale MAVEN_OPTS è la risposta. Il contenuto di stringa di MAVEN_OPTS viene passato a JVM (java.exe).
export MAVEN_OPTS=....
set MAVEN_OPTS=...
Ad esempio: in Windows set MAVEN_OPTS="-Xmx1024m"
imposta la dimensione heap del processo Maven a 1024 MB.
Aggiornamento (01.04.2013): passare direttamente al molo.
Matthew Farwell (si prega di revocare lo his answer per accreditarlo) viene fornito con la soluzione dell'utilizzo di un processo JVM a forcella per eseguire Jetty che è a new feature of the Jetty plugin. Questa è una soluzione migliore in quanto il primo viene eseguito all'interno dello stesso processo JVM di Maven (quindi condivide la memoria).
non sarebbe impostarla per l'intero JVM correre? C'è un modo per farlo influenzare solo il pontile che inizia? – BeepDog
sì è - vedere (e votare) la nuova risposta da Matteo Farwell - c'è una nuova caratteristica di plug-in banchina per l'esecuzione pontile in JVM separata con proprie argomentazioni –
ne dite: mvn -DMAVEN_OPTS=-Xmx1024m jetty:run
questo non funziona, MAVEN_OPTS non è possibile impostare come questo – walnutmon
Sembra che il tuo approccio attuale è corretta - quando si esegue pontile attraverso Maven, molo è un filo all'interno del processo di Maven. Quindi l'aumento dell'heap di Maven aumenterà l'heap del molo.
Come si imposta MAVEN_OPTS?
Un esempio che ho trovato si presenta così: MAVEN_OPTS='-Xmx256m -Xms10m' mvn clean jetty:run
noti che MAVEN_OPTS
è una variabile di ambiente qui, e non passò per la JVM (che non saprebbe cosa fare con esso).
Su Linux/Unix
export MAVEN_OPTS="-Xmx256m" && mvn clean install jetty:run
farà il trucco
come questo si differenzia dalla risposta contrassegnata come corretta? –
Lascia la serie di variabili per le esecuzioni successive, che potrebbero non essere intese. –
Con le versioni più recenti del Maven-molo-plugin, è possibile utilizzare mvn:run-forked
. L'opzione jvmArgs consente di impostare -Xmx ecc.
Per ulteriori informazioni, vedere: jetty:run-forked : Running an unassembled webapp in a separate jvm.
Penso che il problema originale era Starting Jetty in separate JVM.
soluzioni in cui Jetty assembla i file WAR prima di eseguirlo, sono un problema nel mio caso. Quando si assembla il file WAR, sembra che il plug-in salti i "passaggi di filtraggio" di cui ho bisogno quando copio e impacchetta le risorse Web. Il molo: l'obiettivo di deploy-war utilizza semplicemente un file WAR pre-costruito, ma non supporta il parametro jvmArgs. :-(Impostazione dei MAVEN_OPTS env opere variabili, ma devo impostare di nuovo per altre applicazioni che costruire. Sarebbe bello se potessi impostare le opzioni JVM tramite il plug-in di configurazione, mantenendo quel config con l'applicazione che ne ha bisogno. –
Il plugin consente di specificare jvmArgs in questo modo:
<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>
non ha funzionato per me, ho provato: \t \t \t
@davidjnelson È necessario utilizzare 'pontile: run-biforcuta 'obiettivo. Vedi: risposta di Matthew Farwell sopra: http://stackoverflow.com/a/13388081/19501. –
Ma come far funzionare il jetty come 'jetty: run-forked' quando il comando digitato è' mvn clean install'? – Stephane
Il <jvmArgs>
param qui menzionato: Maven jetty plugin non ha funzionato per me.
versione Maven: Apache Maven 3.0.3
Jetty Maven versione del plugin: molo-maven-plugin: 8.1.10.v20130312
questo ha funzionato:
MAVEN_OPTS='-Xmx4096m -Xms4096m'
export MAVEN_OPTS
mvn jetty:run &
è possibile utilizzare per passare all'argomento -Xmx simili;
<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>
per specificare gli argomenti VM tramite la riga di comando (come originariamente richiesto) è possibile effettuare le seguenti operazioni:
mvn clean install -DargLine="-Xmx1524m"
In quali circostanze funziona? E 'specifico per il molo? Per me, non ha funzionato, durante l'impostazione di MAVEN_OPT. – glaed
Non c'è modo utilizzando la riga di comando. Ma si potrebbe copiare il mvn.cmd
/mvn.sh
-mvnhp.cmd
e cambiare la linea
%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%
Per
%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%
so che domanda è molto vecchio, ma lo trovare una soluzione? (Intendo non aggiungo un argomento per tutta la JVM, ma solo per pontile) Penso Cargo farebbe il trucco, ma non mi sento come l'aggiunta di un'altra cosa per il mio progetto ... – Depado
Sì, utilizzare -DargLine ... vedere la mia risposta qui sotto per esempio completo –
-DargLine non funziona con molo: corsa, funziona con molo: run-biforcuta – Jay