使用 Java 创建 Windows 符号链接(相当于 MKLINK)



谁能告诉我如何制作符号链接(以与MKLINK相同的方式)和/或删除Java的符号链接。我已经找到了使用 Java 作为包装器并使用 Windows 本机程序来实现此目的的解决方案,但我真的想要一个纯 Java 解决方案。提前谢谢你!

从Java 7开始,您可以使用NIO软件包轻松完成此操作。

Path target = Paths.get("target");
Path link = Paths.get("link");
Files.createDirectory(target);
Files.createSymbolicLink(link, target);

请记住,您确实需要正确的权限。在我的单元测试中,我必须以管理员身份运行 eclipse 才能使其工作(与我无法从普通cmd.exe创建链接相同)

据我所知,窗口没有像类Unix系统那样具有真正的符号链接。

但是,Windows具有以下相关工具:

  1. 您可以映射网络驱动器,即将驱动器号附加到指定的网络路径。您绝对可以使用 WMI 执行此操作。要从Java访问WMI,请查看JaWin,Jinterop,Jintegra等工具,或者在JScript o VBScript中编写WMI脚本,并从Java执行。

  2. 您可以使用将字母分配给本地文件系统路径的命令subst。这是最接近Unix软链接的方法。

  3. 您可以创建桌面快捷方式。手动创建一个并查看它。快捷方式实际上是常规文本文件(据我所知是INI格式)。您可以使用所需的任何语言(包括java)轻松创建一个。这不是软链接,但可以点击。

最新更新