デフォルトでは、maven Surefile プラグインは隔離された (フォークされた) 環境でテストを実行します。この動作は、次の構成でオーバーライドできます。
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<forkMode>never</forkMode>
</configuration>
</plugin>
</plugins>
</build>
テストをデバッグする必要がある場合は、この構成スニペットを使用する必要があります。または、次の方法で maven build を実行することもできます。
$ mvn -Dmaven.surefire.debug tests
これにより、ポート 5005 でデバッガーが開始されます。
私の質問は次のとおりです。分岐戦略にはどのような利点があり、maven ビルドのデフォルト戦略として選択されるのはなぜですか? 非フォーク戦略はより簡単なので、デフォルトとして使用する必要があります (maven は構成ツールよりも慣例です)。