Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在mac上的自定义位置安装java 7?_Java_Macos_Java 7 - Fatal编程技术网

如何在mac上的自定义位置安装java 7?

如何在mac上的自定义位置安装java 7?,java,macos,java-7,Java,Macos,Java 7,我想在mac上静默安装Java7。我无法在同一网站上找到任何文档/链接

我想在mac上静默安装Java7。我无法在同一网站上找到任何文档/链接<我也不想把它放在图书馆里。是否可以在任何自定义位置安装相同的组件
我对mac非常陌生,非常感谢您的帮助。

就像在Linux中一样,您可以在mac上任意位置安装Java。您只需要确保将Java可执行文件添加到路径中,或者创建Java可执行文件的符号链接,并将其放入/usr/bin/目录中,以便它可以在任何地方执行

将Java添加到路径:

ln -s /yourjavadir/java /usr/bin/java
1) 修改在home director中找到的
.bash\u配置文件

2) 添加此行:
export PATH=/yourjavadir/bin:$PATH

3) 保存并退出

4) 然后执行
source.bash\u profile
以重新加载文件。你只需要做一次

创建符号链接:

ln -s /yourjavadir/java /usr/bin/java
不幸的是,OSX上的“标准”Java是以非常非标准的方式打包的

这不像linux那么简单,下载的DMG提供了一个PKG文件,如果您运行它,它只会安装Java。如果您试图保持OSX附带的标准Java完好无损,这是没有用的


我要做的是从Oracle下载DMG文件并打开它,但是我没有运行PKG,而是使用pkgutil来提取包的内容。您将找到一个名为jdk*.pkg的目录,在其中您将看到一个名为Payload的文件。这是一个gzip的CPIO文件,您可以通过cating它并将其管道导入CPIO-zi来提取它。从这里您将拥有一个名为Contents的目录,在它下面您将找到一个名为Home的目录。这个“Home”目录是Linux tar.gz Java下载通常会得到的目录。您可以将它复制到任何您想要的地方,并将bin目录放在您的路径中,并将JAVA_HOME设置为它,这样您就可以开始了。

只是为了让@HawkMage中的步骤更加明确(并举例说明如何使用JDK8):

  • 从Oracle下载二进制文件(例如,
    jdk-8u5-macosx-x64.dmg
  • 双击Finder以装入卷。忽略带有“JDK 8 Update x.pkg”的窗口
  • 使用
    pkgutil
    将包的内容展开到临时目录中:

    $ pkgutil --expand  /Volumes/JDK\ 8\ Update\ 05/JDK\ 8\ Update\ 05.pkg /tmp/jdkpkg
    
  • 然后,切换到该目录,并使用
    cpio
    展开
    有效载荷
    文件:

    $ cd /tmp/jdkpkg
    $ cpio -i < ./jdk18005.pkg/Payload
    

  • 我也有同样的问题,只是设法解决了

  • 下载并解压缩自定义目录中的Java二进制文件。例如-
  • /Users/myuser/Documents/jre1.8.0_25.jre

  • 使用以下参数更新.bash_配置文件
  • export JAVA_HOME=/Users/a514624/Documents/jre1.8.0_25.jre/Contents/HOME
    导出路径=$PATH:$JAVA_HOME/bin

  • 关闭终端窗口,然后再次打开它。或者,您可以键入命令“source.bash\u profile”
  • 在这些步骤之后,如果在命令提示符上键入java-version,您将看到它反映了希望看到的版本-

    $java-version
    java版本“1.8.0_25”java(TM)SE运行时
    环境(构建1.8.0_25-b17)Java热点(TM)64位服务器虚拟机
    (构建25.25-b02,混合模式)

  • 取消现有Java软链接的链接(需要root/提升权限)
    root$unlink/usr/bin/java

  • 创建指向新Java安装的符号链接
    root$ln-s/Users/myuser/Documents/jre1.8.0_25.jre/Contents/Home/bin/java/usr/bin/java


  • 就这样。在这之后,生活是美好的。希望这有帮助

    如果您只需要JRE/Java Runtime Edition,那么前面的答案是正确的,但是如果您需要JRE和JDK(Java开发工具包),那么只需转到下面的链接,选择mac并运行dmg,它会更好,而且是最简单的


    你想这样做有什么特别的原因吗?真正的问题是,为什么苹果让JDK难以安装到你的文件系统上。@EricWilson是的,即使我同意Eric的观点。是的,你可以。只需删除它并创建自己的。如果我已经回答了你的问题,请标记它是否已回答。谢谢:)嘿,杰伊,我已经做了标记。你能帮我回答这个问题吗。它有我这边的赏金。:)谢谢你,@HawkMage。这正是我想做的。您的说明很好。“pkgutil--扩展…”(我可能错了,但非常确定您需要两个连字符)