Скопируйте каталог, сохранив символические ссылки, используя Java File / IO API - PullRequest
5 голосов
/ 11 июня 2010

Можно ли копировать содержимое каталога с помощью API ввода-вывода Java и API, связанных с файлами, при сохранении существующих символических ссылок? Я работаю над инструментом, который должен выполнять операции «копирования каталога» с различными разновидностями UNIX, сохраняя при этом существующие символические ссылки.

Я бы предпочел попробовать это с использованием основных библиотек Java SE, не прибегая к Runtime.exec / ProcessBuilder для вызова двоичного файла "/ bin / cp" платформы. IOUtils Apache Commons, похоже, также не поддерживает это.

Моим последним средством будет использование Runtime.exec / ProcessBuilder!

UPDATE: Я предполагаю, что я буду использовать Runtime.exec / ProcessBuilder для вызова собственного исполняемого файла "cp", поскольку это невозможно с использованием базовых API-интерфейсов Java или какой-либо из библиотек Apache Commons.

1 Ответ

4 голосов
/ 11 июня 2010

Вы ограничены версиями Java <= 6? </p>

В противном случае вы можете посмотреть http://docs.oracle.com/javase/tutorial/essential/io/links.html,, в частности, разделы Обнаружение символической ссылки и Поиск цели ссылки .

С Файловая система Java NIO.2 в JDK 7 :

API java.nio.file полностью поддерживает символические ссылки, основанные на давней семантике символических ссылок UNIX - то, что разработчики Java давно просили.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...