こちらの回答で@AR.3によっても示唆されているように、clean
フェーズと目標は-
デフォルトでは、project.build.directory、project.build.outputDirectory、project.build.testOutputDirectory、および project.reporting.outputDirectory で構成されたディレクトリを検出して削除します。
それでも、特定のファイルを削除から除外したい場合は、逆のアプローチ(単純なハック)に従って次のように実行できます-
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<excludeDefaultDirectories>true</excludeDefaultDirectories>
<filesets>
<fileset>
<directory>target</directory>
<followSymlinks>false</followSymlinks>
<useDefaultExcludes>true</useDefaultExcludes>
<includes>
<include><!--everything other that what you want to exclude--></include>
</includes>
</fileset>
</filesets>
</configuration>
</plugin>
同様のリンクexcludeDefaultDirectories
からの詳細-
プロジェクト用に構成されたデフォルトの出力ディレクトリの削除を無効にします。true に設定すると、パラメータ ファイルセットを介して選択されたファイル/ディレクトリのみが削除されます。
編集
直接的なアプローチを使用して、特定のファイルを削除から除外することは実際に可能です。
<configuration>
<excludeDefaultDirectories>true</excludeDefaultDirectories>
<filesets>
<fileset>
<directory>target</directory>
<includes>
<include>**</include>
</includes>
<excludes>
<exclude><!-- folder you want to exclude --></exclude>
</excludes>
</fileset>
</filesets>
</configuration>