W ostatnich wersjach Maven można uaktywnić debugger uruchamiając mvnDebug zamiast mvn, Zestawy plików mvnDebug bat/sh MVN__DEBUG_OPTS i przekazuje je do java.exe. Przekazywane są następujące wartości:
set MAVEN_DEBUG_OPTS=-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
Jeśli to nie wystarczy, to może pracować (zauważ, że nie zostały jeszcze przetestowane, będę aktualizować raz mam). Maven czyta właściwości z prefiksem "env." ze środowiska, możesz mieć możliwość ustawienia zmiennych środowiskowych przez prefiksowanie z tym samym. tj .:
<profile>
<id>dev</id>
<properties>
<env.MAVEN_OPTS>-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000<env.MAVEN_OPTS>
</properties>
</profile>
Aktualizacja: Wtyczka murowany pozwala specify system properties być stosowane podczas wykonywania testu. Konfiguracja jest następująca:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.4.2</version>
<configuration>
<systemProperties>
<property>
<name>propertyName</name>
<value>propertyValue</value>
</property>
</systemProperties>
</configuration>
</plugin>
Jeśli żadna z tych prac dla ciebie, to jest możliwe, aby napisać brakujące wtyczki skonfigurowany w swoim profilu, który wiąże się z fazą Inicjowanie i ustawia zmienne. Wtyczka musiałby konfigurację tak:
<plugin>
<groupId>name.seller.rich</groupId>
<artifactId>maven-environment-plugin</artifactId>
<version>0.0.1</version>
<executions>
<execution>
<id>set-properties</id>
<phase>initialize</phase>
<goals>
<goal>set-properties</goal>
</goals>
</execution>
</executions>
<configuration>
<properties>
<env.MAVEN_OPTS>-Xdebug -Xnoagent -Djava.compiler=NONE
-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000<env.MAVEN_OPTS>
</properties>
</configuration>
</plugin>
podczas wykonywania wtyczki byłoby ustawić każdy przekazany personelowi System.setProperty(). Jeśli pierwsze dwa nie są odpowiednie lub nie działają, powinno to rozwiązać problem.
Hi Rich, Komenda mvnDebug zadziałała, ale wydaje się, że zawiesi się całkiem sporo i zjem dużo pamięci. Jeszcze nie miałem szczęścia z tymi innymi opcjami, ale będę próbować dalej. Walter –