Попробуйте / поймайте и повторите ... Блокировка существует по причине. Если файл все еще пишется, вы не хотите его читать. Даже если это возможно, будет хотя бы один случай, когда ваш Java-код считает, что он прочитал весь файл, когда генерация CSV еще не завершена.
На самом деле ваш код опасен, файл, скорее всего, закрыт между двумя командами оболочки, которые к нему добавляются, поэтому ваш код Java может открывать и блокировать файл для себя во время выполнения сценария оболочки.
Итак, либо запустите код Java после того, как файл полностью сгенерирован, либо, если код Java наблюдает за файлом, сгенерируйте файл под временным именем, а затем переименуйте его в ожидаемое имя, как только это будет сделано.