你是对的,你需要从另一个驱动器运行应用程序。我会遵循Java Web Start CD 安装指南,该指南对于 USB 驱动器或任何其他媒体的工作应该与对 CD 的工作一样好。
您需要使您的应用程序成为 Java Web Start 应用程序。它实际上比听起来容易得多。您的 .jar 不需要更改,您只需创建一个扩展名为 .jnlp 的小型 XML 文件并将其放在 .jar 文件旁边。有关 Java Web Start 和 JNLP 文件的信息可以在教程和该页面底部的链接中找到。
执行安全删除的外部可执行文件可以包含在您的应用程序 .jar 文件中。您可以将其从 .jar 复制到临时文件以运行它:
Path safeRemovalProgram = Files.createTempFile(null, ".exe");
try (InputStream stream =
MyApp.class.getResourceAsStream("saferemoval.exe")) {
Files.copy(stream, safeRemovalProgram,
StandardCopyOption.REPLACE_EXISTING);
}
safeRemovalProgram.toFile().setExecutable(true);
ProcessBuilder builder =
new ProcessBuilder(safeRemovalProgram.toString());
builder.redirectOutput(ProcessBuilder.Redirect.INHERIT);
Process safeRemovalProcess = builder.start();