Используйте этот код
, генерируйте исключение NullPointerException из flatMap
и отлавливайте ошибку с помощью .onErrorReturn (throwable -> {// ваша работа здесь})
@Carson J .
Вы, кажется, забываете - исполнительная опция cleartool находит команду.
Это на самом деле позволяет Вам выполнять другие команды, чем cleartool, включая системные (как sh или сценарий DOS).
Я знаю, что Вы "предпочли бы не выполнять другую команду", но если тот другой системный сценарий является частью исполнительной опции команды находки... можно утверждать, что это - все еще одна команда ;)
Поэтому создайте простой сценарий как:
(Unix 'print.sh')
#!/bin/sh
if [ $1 != $2 ] ; then
echo $1
fi
(окна 'print.bat')
@echo off
if not "%1"=="%2" echo "%1"
Помещенный, что сценарий или в Вашем поисковом каталоге, или добавляют путь сценария к Вашему %PATH % или среде $PATH.
И наконец, используйте команду находки (со всеми другими опциями относительно фильтрации даты, ответвления, фильтрующего и так далее)
(Unix)
cleartool find . -nrec -type f -exec './print.sh $CLEARCASE_PN ./pom.xml'
(окна)
cleartool find . -nrec -type f -exec "print.bat %CLEARCASE_PN% .\pom.xml"
И здесь Вы идете: "все файлы в каталоге, которые не имеют имени pom.xml".
Примечание: '-тип f' опция команды находки позволяет Вам ограничивать поиск именами файлов только (не имена каталогов).
Подстановочные знаки ClearCase не имеют инверсии (AFAIR), но можно использовать grep для этого -
cleartool ls -short -nxname | grep -v pom.xml