我在创建Java目录的符号链接时遇到了麻烦。我正在使用Files类中的createSymbolicLink()方法:http://docs.oracle.com/javase/7/docs/api/java/nio/file/Files.html
绝对路径:
/some/path/target
/some/path/xxx/linkname
我希望在/some/path/xxx/
文件夹中创建目录/some/path/target
中的链接,而是创建从/some/path/xxx/linkname
到/some/path/xxx/target
的链接。我无法弄清楚我做错了什么。
当我创建从/some/path/linkname
到/some/path/target
的链接时,一切都按预期工作。
非常感谢任何帮助。
编辑: 这是我的代码:
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();
}
“records.path”和“webserver.root”都是相对路径。
其实我刚刚找到问题的解决方案:如果我这样做,它会起作用:
records = records.toAbsolutePath();
我假设createSymbolicLink()
将使用绝对路径来创建链接,这是错误的。
答案 0 :(得分:9)
我找到了问题的解决方案:如果我这样做,它会起作用:
records = records.toAbsolutePath();
我假设createSymbolicLink()
将使用绝对路径来创建链接,这是错误的。