Tôi gặp sự cố khi tạo liên kết tượng trưng cho một thư mục trong Java. Tôi đang sử dụng phương pháp createSymbolicLink() từ lớp Files: http://docs.oracle.com/javase/7/docs/api/java/nio/file/Files.htmlTạo liên kết tượng trưng với Java
đường dẫn tuyệt đối:
- Target:
/some/path/target
- Link:
/some/path/xxx/linkname
Tôi hy vọng rằng một liên kết trong thư mục /some/path/xxx/
được tạo vào thư mục /some/path/target
, nhưng thay vào đó, liên kết từ /some/path/xxx/linkname
đến /some/path/xxx/target
được tạo. Tôi không thể hiểu được tôi đang làm gì sai.
Khi tôi tạo liên kết từ /some/path/linkname
đến /some/path/target
, mọi thứ hoạt động như mong đợi.
Bất kỳ trợ giúp nào được đánh giá cao.
EDIT: Dưới đây là mã của tôi:
Path records = Paths.get(Properties.getProperty("records.path"));
Path recordsLink = Paths.get(Properties.getProperty("webserver.root") + System.getProperty("file.separator") + records.getFileName());
try {
Files.createSymbolicLink(recordsLink, records);
} catch (IOException e) {
e.printStackTrace();
}
Các "records.path" và "webserver.root" đều đường dẫn tương đối.
Thật sự tôi chỉ tìm thấy một giải pháp cho vấn đề: Nó hoạt động nếu tôi làm điều này:
records = records.toAbsolutePath();
tôi cho rằng các createSymbolicLink()
sẽ sử dụng đường dẫn tuyệt đối để tạo ra các liên kết, đó là sai.
Bạn có thể đăng mã của mình không? –
Tôi tìm thấy một giải pháp. Xem bài đăng đã chỉnh sửa. – omnibrain
Vui lòng không chỉnh sửa câu hỏi để đặt câu trả lời ở đó. Ngay cả khi bạn tìm thấy câu trả lời cho câu hỏi của mình, hãy đặt câu trả lời đúng. –