Я работаю над плагином SBT, где я хотел бы заархивировать каталог. Это возможно из-за следующего метода в IO :
def zip(sources: Traversable[(File,String)], outputZip: File): Unit
После работы с этим методом кажется, что просто передать ему каталог и ожидать, что результирующий файл zip будет иметь ту же структуру файлов и папок, будет неправильным. Передача каталога (пустого или иного) приводит к следующему:
[error]...:zipper: java.util.zip.ZipException: ZIP file must have at least one entry
Следовательно, похоже, что способ получить использование метода zip
состоит в том, чтобы пройти по каталогу и добавить каждый файл отдельно к объекту Traversable
.
Предполагая, что мое понимание правильное, это кажется мне очень странным - очень редко пользователи должны выбирать, что следует добавить в архив.
Есть мысли по этому поводу?