2017-09-13 1 views
1

これはビットオフになるかもしれませんが、ここで私が望むものです。通常のメンテナンスクリーンフェーズの外でプロジェクトフォルダを削除する方法

私はターゲットディレクトリに(平均的なプロジェクトごとに)ファイルを生成するプロジェクトを持っています。私は以下を使ってすべてのビルドで実行されるようにmaven cleanを構成しました。

<build> 
    <plugins> 
     <plugin> 
      <artifactId>maven-clean-plugin</artifactId> 
      <version>3.0.0</version> 
      <executions> 
       <execution> 
        <id>auto-clean</id> 
        <phase>initialize</phase> 
        <goals> 
         <goal>clean</goal> 
        </goals> 
       </execution> 
      </executions> 
     </plugin> 
    <plugins> 
<build> 

また、ログとテストレポートを保存するターゲット外のいくつかのフォルダがあります(私は意図的に選択しました)。これらは私が彼らが一定期間参照することを望むように、すべての実行できれいにしたくないです。

プロジェクトはおおよそ次のようになります。

Project 
|--src/main/java 
|--src/test/java 
|--target 
|--logs* 
+--reports* 

ここで、ログとレポートは、すべての実行で削除されないようにしたいフォルダです。 私は、レポートやログが削除されない部分を管理することができました。 (かなり単純ですが、あなたのビルドの2つのフォルダについては言及しません)

しかし、これらの2つの特別なフォルダをしばらく削除するには、mavenコマンドも必要です。どうやってやるの ?

+1

一般的にコマンドライン 'rm -rf'はそれを行います。あなたは質問に出ている周波数でそれを管理するためにもmavenが必要ですか? – nullpointer

+0

@nullpointer、true ..できます。しかし、WholプロセスをCI(追加の設定が必要)に組み込むこと、そしてこのプロジェクトの将来のユーザーの専門知識を見ると、私はむしろコマンドを実行する1つの方法に固執します。ありがとう! – Asanke

答えて

2

あなたが別のcleanプロセスを設定するprofileを追加することを検討できます。

<profiles> 
    <profile> 
    <id>cleanLogs</id> 

    <build>...</build> 

    </profile> 
</profiles> 

mvn clean -PcleanLogでそれを呼び出すと、その特定のビルドプロセスを呼び出します。
this tutorial on maven profilesも参照してください。

+0

ありがとう@VonC !!!出来た! – Asanke

関連する問題