运行 .jar 文件时如何轻松提升?

Mer*_*ham 8 java windows-7 elevation jar

尝试运行安装程序 Jar 文件时,我收到一条错误消息,提示写访问被拒绝,无法在 Program Files 文件夹下创建目录。

右键单击 -> 以管理员身份运行不适用于 Jar 文件(我假设是因为 Java.exe 使用它们 - 它们本身不被外壳程序视为直接可执行)。

运行具有高程的 .Jar 文件的最快和最简单的方法是什么?

我正在评估这个工具以推荐给我们的开发团队,他们将手动将它安装在他们的盒子上。我更喜欢不需要他们输入任何内容的选项。

Pat*_*hes 6

为了让其他人可以轻松地运行 JAR 安装程序,而不必对其所有计算机进行更改,您可能希望使用一个批处理脚本来包装它,该脚本可以提升和运行 JAR 文件。您可以使用MicrosoftElevation PowerToys轻松完成此操作。它们包括一个有用的实用程序,让您只需在elevate命令前加上前缀即可以管理员身份启动任何内容。

一旦你下载他们,他们解压到一个文件夹,复制elevate.cmdelevate.vbs与JAR文件的文件夹。然后,编写一个带有.cmd扩展名的新批处理脚本,内容如下:

elevate cmd /c start "%CD%\installer.jar"
Run Code Online (Sandbox Code Playgroud)

这将在其系统上启动带有此类文件的默认处理程序的 JAR 文件(使用 的start命令cmd)。 %CD%指向脚本的当前工作目录,并且是必需的,因为提升的命令行将以c:\windows\system32.

如果由于某种原因未将 Java 正确配置为 JAR 文件的默认处理程序,那将会失败。如果您可以指望 Java 在所有系统上都位于同一个位置,那么您可以这样做:

elevate "c:\Program Files\Java\jre\bin\java.exe" -jar "%CD%\installer.jar"
Run Code Online (Sandbox Code Playgroud)

完成其中任何一项后,只需运行批处理文件,Windows 将提示管理员提升并启动安装程序。

将提升脚本、您的脚本和安装程序文件包含在启动脚本的自解压存档中,您可以将其打包到一个漂亮的小.exe文件中。(7-Zip是用于创建此类档案的出色开源工具。)

有关 Elevation PowerToys 的更多信息,请参阅链接文章或下载中包含的 README 文件。