44

我正在尝试在办公室笔记本电脑上安装 JDK,但它说我需要管理员权限。我只能在工作时访问我自己的帐户。

如何在没有管理员权限的情况下安装 Java 开发工具包?

4

14 回答 14

50

从 Java SE 7u21 开始,Oracle 提供了一个所谓的Server JRE供下载。这是一个标准的 .tar.gz 存档,您可以在计算机上的任何位置提取它。虽然下载名为JRE,但它包含一个“普通”JDK 子目录(包括 javac 编译器等)。

指示:

于 2014-06-13T11:38:54.363 回答
27

Oracle 在更新 102中更改了包格式,正如@Webrjn在此问题的先前答案中所指出的那样,但 unpack 方法仍然适用于另外两个解压缩操作:

在此处输入图像描述

  1. JDK 的安装可执行文件是一个压缩文件,因此只需将其与 7z 解压缩到您想要的任何文件夹即可。
  2. 转到目录 .rsrc/1033/JAVA_CAB10/
  3. 唯一的文件是111,它也是一个包含 tools.zip 的压缩文件。解压即可获得tools.zip
  4. tools.zip因此,现在通过解压缩到所需的 java 安装路径来执行原始解包过程。
  5. 打开 Windows 命令提示符并运行:

    for /r %i in (*.pack) do .\bin\unpack200.exe -r -v %i %~pi%~ni.jar
    

    unpack200程序在文件末尾抱怨垃圾,但解压后的 jar 经 7z 测试正常。

  6. Java 源src.zip代码110位于.rsrc/1033/JAVA_CAB9.

顺便说一句,更新101只包含tools.zip文件,可以用之前的解压方法安装。

于 2016-07-21T18:24:29.483 回答
25

这是在没有管理员权限或没有管理员密码的情况下安装 java 的解决方法。为此,您需要安装不需要管理员权限的 cygwin。在 utils 中确保选择 cabextract.exe 来安装它。

启动 cygwin bash 外壳。

键入 cabextract jdk1.6.exe <-- jdk 文件名

这会将所有文件提取到当前目录中。

将 tools.zip 移动到新目录并使用 cygwin 或 Windows 资源管理器解压缩。这将是您的 java 目录。

提示:尝试替换 7zip 而不是 cabextract 和 cygwin。如果它有效,它会快得多。

编辑:这不会为您提供具有最新版本 jdk 6 和 7 的工作 JDK。许多 jar 文件(例如 rt.jar)是压缩的,因此需要使用 unpack200 对其进行解压缩。

只需通过每个目录查找扩展名为 .pack 的文件并使用 unpack200 解压缩它们,例如: .\jre\bin\unpack200 .\jre\lib\rt.pack .\jre\lib\rt.jar

这允许您运行 java 程序,但是我仍然遇到 Eclipse 问题,因为注释存在一些问题,因此可能缺少另一个步骤。

在超级用户上这个类似问题的答案中,有一个脚本可以自动查找所有 .pack 文件并将它们解压缩到正确的文件夹中。

于 2012-11-13T04:52:15.903 回答
15

以下是在没有管理员权限的情况下在 Windows 7 上安装 JDK 的所有步骤。

  1. 您需要该cabextract程序来提取安装程序文件。我尝试了 7zip,但它没有正确提取驾驶室。相反,我使用了 cygwin。您可以setup.exe从他们的网站获取该程序,但您必须重命名它,因为 Windows 假定任何称为“设置”的内容都需要管理员权限。我将其重命名为cygwin.exe. 运行那个。它会问你在哪里安装。我选择了cygwin我的主目录中的目录。当弹出窗口询问您要安装哪些程序时,在搜索栏中键入“cabinstall”。展开“存档”部分并确保“cabinstall”未设置为“跳过”。(单击“跳过”文本,直到显示最高数字。)继续安装。这需要几分钟。

  2. 可选:添加cygwin\bin到您的路径。从控制面板、用户帐户、更改我的环境变量、编辑 PATH 执行此操作。

  3. 下载 JDK。我下载了 jdk-6u45-windows-x64.exe。

  4. 在该文件所在的目录中:mkdir tmp

  5. cd tmp

  6. cabextract ..\jdk-6u45-windows-x64.exe

  7. 为实际的 JDK 创建一个新目录。我jdk在我的主目录中使用过。

  8. 将文件提取tools.zip到其中。它带有 Java 运行时,因此您不需要原始 cab 中的其他文件,例如jre.msi.

  9. 解压所有.pack文件。您可以通过bin/unpack200在它们上运行程序来手动执行此操作,或者使用 bash(如果您在上面安装了 cygwin):

    1. bash

    2. for f in $(../cygwin/bin/find . -name "*.pack"); do bin/unpack200 $f ${f%.*}.jar; done

  10. 添加jdk/bin到您的 PATH(参见上面的步骤 2)。

于 2013-06-18T06:06:59.823 回答
6
  1. 下载 JDK
  2. 使用 7 ZIP 解压(解压 exe 文件) 在此处输入图像描述

它包含单个文件 tools.zip,其中包含我们需要的所有文件。将 tools.zip 解压缩到所需的 JDK 目录(例如“D:\JavaJDK\”)。3. 打开包装

现在我们需要解压几个用 pack200 打包的文件。我们通过在 JDK 目录(例如“D:\JavaJDK\”)内的控制台窗口中执行此脚本来做到这一点:

for /R %f in (.\*.pack) do @"%cd%\bin\unpack200" -r -v -l "" "%f" "%~pf%~nf.jar"

请注意,您必须将 unpack200 二进制文件(“D:\JavaJDK\bin\unpack200”)的路径调整到您选择的目录。

  1. 恭喜您现在拥有一个工作的、可移植的 JDK! 在此处输入图像描述

参考:这个链接

于 2016-03-25T13:27:54.793 回答
4

我猜你在Windows上。没有管理员权限是不能安装Oracle提供的JDK的。您可以做的是将它安装在另一台机器上(或找到安装它的机器)并复制 jdk 目录。

于 2012-06-05T04:09:49.727 回答
3

jdk-8u102-windows-x64.exe no longer works with the unpack method, Oracle seem to have changed the package format.

enter image description here

于 2016-07-20T08:50:52.563 回答
2

如果您可以将其安装在任何其他机器上,那么此解决方案将对您有所帮助。

  • 将其安装在另一台机器上。
  • 将 jdk 文件夹带到您的机器上,并将系统和类路径变量设置为您复制 jdk 文件夹的路径。您应该能够运行您的程序。
于 2012-06-05T04:16:47.390 回答
2

也许一个不错的选择是使用 OpenJDK,是一个非官方的 windows 构建,因此您可以将 Zip 文件提取下载到任何文件夹并为您的 windows 用户设置 JAVA_HOME。我以这种方式运行 Android Studio。

于 2014-07-30T20:36:08.420 回答
1

http://www.ehow.com/how_6012601_install-java-admin-privileges.html

给你,伙计,祝你好运。这对我有用。

上面链接的说明

1 将便携式 USB 驱动器插入家用计算机的 USB 插槽。

2 在您的家用计算机上,导航到资源部分中的“下载 Java JDK”链接。

3 单击红色的“下载”按钮。当要求登录时,单击“跳过此步骤”。单击“保存文件”将文件下载到您的计算机。

4 双击您下载的“.exe”文件以开始 Java SE 6 的安装向导。单击“接受”许可协议。

5 在“自定义设置”页面上,单击“源代码”、“公共 JRE”和“Java DB”旁边的小硬盘驱动器按钮,并为每个按钮选择“现在不要安装此功能”。

6 单击右下角的“更改...”按钮,然后从下拉菜单中的“查找范围:”下选择您的便携式 USB 驱动器。单击右上角的“创建新文件夹”按钮(文件夹图标),并将新文件夹命名为“JDK”。选择 JDK 文件夹并单击“确定”。

7 单击“下一步”并等待 Java 安装。

8 通过转到“开始”、“程序”、“附件”“记事本”打开记事本。

9 在记事本中,复制粘贴以下两行批处理脚本:set Path=%~d0\JDK\bin;%PATH% cmd

10 单击“文件”、“另存为”,导航到 USB 驱动器根目录,键入“RunMeForJava.bat”作为文件名,然后单击“保存”。

11 将 USB 驱动器插入您没有管理员权限的计算机,然后双击 USB 根目录中的“.bat”文件。将打开一个命令提示符窗口。键入“javac”(不带引号)以查看 Java 是否正常工作并已完全安装。

于 2012-06-05T04:14:19.927 回答
1

Lawrence提出的方法有效,但您也可以使用7-zipgit bash完成整个事情,而不会遇到太多麻烦。

注意:git bash带有一些 gnu 实用程序并且unpack200是其中之一。

不过,还有另一件小事要做。src.zip解压后自带的文件JDK不存在所以你可以下载Linuxtar.gz版本并解压两次,7-zip然后将丢失的src.zip文件复制到windows unpacked JDK

没有src.zipJDK 并不是什么大问题,但它可以让您轻松访问一些 JDK 源代码,例如Intellij IDEA.

于 2014-07-30T08:50:50.020 回答
1

为了在没有管理员权限的情况下在 Windows 上轻松安装 Java JDK ,您可以使用https://aws.amazon.com/corretto/。它包含一个便携式amazon-corretto-<version>-windows-x64-jdk.zip文件,您只需下载并解压缩即可。

  1. 从 amazon.com 下载便携式 zip 文件,例如https://d3pxv6yz143wms.cloudfront.net/8.232.09.1/amazon-corretto-8.232.09.1-windows-x64-jdk.zip

  2. 将其解压缩到一个文件夹中,例如C:\Users\John\programs

  3. 设置 JAVA_HOME 变量,例如set JAVA_HOME=C:\Users\John\programs\jdk1.8.0_232

  4. 将“bin”文件夹的路径添加到 PATH:例如set PATH = %PATH%; %JAVA_HOME%\bin

  5. 测试安装是否适用javac -version

备注#1。我正在使用 Amazon Corretto 提出这种替代技术,因为其他建议的答案需要 7-zip,您需要管理权限才能安装,而且我没有找到 7-zip 的简单可移植 .zip 版本。

备注#2。my-cmd.cmd您可以通过包含所需变量的文件来设置环境

rem # PROMPT is an optional question of taste ;-)
prompt [$P]$_$$$S
rem # VARIABLE(S)
set JAVA_HOME=C:\Users\UW31RY\programs\jdk1.8.0_232
rem # PATH
set PATH=C:\WINDOWS;C:\WINDOWS\system32;%JAVA_HOME%\bin
rem # Clear the screen!
cls

并创建一个%windir%\system32\cmd.exe /K "my-cmd.cmd"作为Target:值的快捷方式,以及包含该my-cmd.cmd文件作为Start in:值的文件夹,例如C:\Users\John\work.

于 2019-12-12T13:52:24.483 回答
0

@Lawrence 使用 Cygwin 做得很好。让我在不使用任何外部工具的情况下向您展示类似的步骤。

在没有管理员权限的系统上使用实用程序安装:

这适用于没有管理员权限的系统上的 Windows 7 或更高版本

  1. 下载最新版本的 JDK:你可以在这里找到它http://www.oracle.com/technetwork/java/javase/downloads/index.html
  2. 使用 7zip 工具将可执行文件解压缩到一个目录中。再次提取其中的内部tools.zip文件。
  3. 转到..\jre\bin使用SHIFTRight Click打开Command Prompt
  4. 键入unpack200 SRC DST。SRC 的替换:*.pack在解压的目录中搜索文件,复制粘贴文件的目录位置,.packDST 的替换:使用相同的.pack文件路径,并将文件名替换为.jar
  5. 对目录中所有.pack可用的文件执行此操作。(JDK8u65 有 6-8 个文件)
  6. 启动Eclipse,选择一个项目,点击Alt+Enter,点击Build Path
  7. 转到Libraries,删除可用的系统 JRE(如果有)。点击,然后Add Library选择,点击,点击。单击,然后选择。JRE System LibraryNEXTAlternate JREInstalled JREsAddStandard VMNEXTDirectory
  8. 现在选择您在步骤 2 中执行的提取的 JDK 的目录位置,然后单击FINISHAPPLY然后OK

您必须很好地运行该项目而无需实际安装 JDK。干杯!

于 2016-01-14T09:43:56.423 回答
0

我尝试了几种安装方式,但是有一个常见的问题:

在最坏的情况下,如果任何安装都需要管理员权限,那么您将无法使用 7zip,因为没有可移植版本的 7zip。但是,在 Windows 10 和更高版本的 Windows 7 中(如果我没记错的话),可以在没有任何程序安装的情况下提取 zip 文件:只需.zip使用“Windows 资源管理器”打开文件并提取它们。但是,这只适用于普通的 zip 文件,不适用于 JDK 安装程序。

所以,我尝试了另一种方法并且它有效(对于 oracle jdk 1.8-191):您可以在您有权限的其他 PC 上安装 JDK,将其传递给您的公司 PC,并将其设置为要使用的 JDK

  1. 只需在您具有管理员权限的另一台 PC 中安装 JDK,例如您在家中的 PC
  2. 压缩该JAVA_HOME文件夹( 的父文件夹bin),将其复制到 USB 驱动程序,然后将其带到您的公司。
  3. 在您拥有完全访问权限的文件夹中解压缩,例如C:\Users\<your_name>\java(因为某些公司也限制粘贴到Program Files其他地方或其他地方,但绝不会限制您在个人用户文件夹中执行的操作
  4. JAVA_HOME变量设置为那里(如果您不允许这样做,请跳过)。这同样适用于设置java路径(添加bin\java到 PATH 变量)
  5. 打开 Intellij IDEA 或 Eclipse,在 IDE 中设置新的 JDK 以指向那里。
  6. 编写一个简单的 Hello World 程序进行验证。

我发现这是因为当我查看 JDK 安装程序时,我看到的结构与 JDK 文件夹中的结构非常相似。所以我怀疑安装只包括将内容提取到文件夹中,加上一些我们可以手动完成的配置。看来我的理论被证明了。

于 2019-09-24T12:27:46.510 回答