Maven Clean Plugin Excude .cvsignore
Вопрос
В своем проекте я первоначально совершил ошибку и совершил целевой каталог в репозитории CVS; Я знаю, что нет безопасного способа удалить каталог из CVS, поэтому я поместил там файл .cvsignore, чтобы в основном игнорировать все (я не хочу, чтобы разработчики, которые не в состоянии правильно объединиться, чтобы совершить свои занятия ...) Анкет
Проблема поднимается с моим Дженкинсом CI, потому что я стараюсь чистыми и тестируемыми целями; В основном чистый запускается до обновления CVS, поэтому он всегда находит файл для обновления (.CVSignore, который был уничтожен чистым) и запускает часто бесполезную сборку.
Я думаю, что путь - это использовать исключения, но я пытался и не работал:
[INFO] [clean:clean {execution: default-clean}]
[INFO] Deleting file set: **************************/target (included: [**], excluded: [])
Исключение настроено как:
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<executions>
<execution>
<id>not-clean</id>
<configuration>
<filesets>
<fileset>
<directory>target</directory>
<excludes>
<exclude>*cvsignore</exclude>
</excludes>
<followSymlinks>false</followSymlinks>
</fileset>
</filesets>
</configuration>
<phase>initialize</phase>
<goals>
<goal>clean</goal>
</goals>
</execution>
</executions>
</plugin>
Решение
Вы можете попробовать настройку <excludeDefaultDirectories>
к true
, В противном случае, я верю target
Папка всегда будет удалена.
Следующий фрагмент кода работает для меня. Обратите внимание, что я использовал default-clean
как id
.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
<version>2.4.1</version>
<executions>
<execution>
<id>default-clean</id>
<configuration>
<excludeDefaultDirectories>true</excludeDefaultDirectories>
<filesets>
<fileset>
<directory>target</directory>
<excludes>
<exclude>.cvsignore</exclude>
<exclude>CVS</exclude>
<exclude>CVS/**</exclude>
</excludes>
<followSymlinks>false</followSymlinks>
</fileset>
</filesets>
</configuration>
<phase>initialize</phase>
<goals>
<goal>clean</goal>
</goals>
</execution>
</executions>
</plugin>