【问题标题】:How to install java 7 on mac in custom location?如何在自定义位置在 mac 上安装 java 7?
【发布时间】:2013-02-19 11:08:48
【问题描述】:

我想在 mac 上静默安装 java 7。我找不到任何文档/链接。
我也不希望它在 /Library 中。是否可以在任何自定义位置安装相同的。
我是 mac 新手,非常感谢任何帮助。

【问题讨论】:

  • 您有什么特别的理由要这样做吗?
  • 真正的问题是,为什么 Apple 很难在您的文件系统上安装 JDK。
  • @EricWilson 是的,即使我同意同一个 Eric。

标签: java macos java-7


【解决方案1】:

只是为了使@HawkMage 中的步骤更明确(并说明它们与JDK8 一起使用):

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

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

    $ cd /tmp/jdkpkg
    $ cpio -i < ./jdk18005.pkg/Payload
    
  5. 最后,将Home 目录移动到您希望JAVA_HOME 存在的任何位置

    $ mv Contents/Home /mytools/jdk-1.8.0_05
    

【讨论】:

  • 'pkgutil --expand ...'(我可能错了,但很确定你需要 2 个连字符)
【解决方案2】:

不幸的是,OS X 上的“标准”Java 以非常非标准的方式打包。

它不像linux那么简单,下载的DMG会给你一个PKG文件,如果你运行它就安装Java。如果您试图保持 OS X 附带的标准 Java 完好无损,这将没有用处。

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

【讨论】:

  • 谢谢你,@HawkMage。这正是我想要做的。你的指示很棒。
【解决方案3】:

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

将 Java 添加到路径:

1) 修改您的主目录中的.bash_profile

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

3) 保存并退出

4) 然后执行source .bash_profile 重新加载文件。您只需执行一次。

创建符号链接:

ln -s /yourjavadir/java /usr/bin/java

【讨论】:

  • 是的,你可以。只需删除它并创建自己的。如果我已经回答了您的问题,请将其标记为已回答。谢谢:)
  • 嘿,Jay,我已经标记了它。你能帮我回答这个问题吗stackoverflow.com/questions/14806709/…。它有我这边的赏金。 :)
【解决方案4】:

我遇到了同样的问题,只是设法解决了。

  1. 在您的自定义目录中下载并解压缩 Java 二进制文件。例如 -

/Users/myuser/Documents/jre1.8.0_25.jre

  1. 使用以下参数更新您的 .bash_profile

export JAVA_HOME=/Users/a514624/Documents/jre1.8.0_25.jre/Contents/Home export PATH=$PATH:$JAVA_HOME/bin

  1. 关闭终端窗口并再次打开。或者,您可以键入命令“source .bash_profile”。

在这些步骤之后,如果您在命令提示符下键入 java -version,您会看到它反映了您希望看到的版本 -

$ java -version java version "1.8.0_25" Java(TM) SE Runtime Environment (build 1.8.0_25-b17) Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)

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

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

就是这样。之后的生活很美好。希望这会有所帮助!

【讨论】:

    【解决方案5】:

    如果您只需要 JRE/Java 运行时版,那么之前的答案是正确的,但是如果您需要 JRE 和 JDK(Java 开发工具包),那么只需转到下面的链接并选择 mac 并运行 dmg,它就更好了,到目前为止最简单的。

    http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

    【讨论】:

      猜你喜欢
      • 2015-06-05
      • 2020-09-04
      • 1970-01-01
      • 2012-05-08
      • 2014-08-12
      • 1970-01-01
      • 2011-11-06
      • 1970-01-01
      • 2015-09-06
      相关资源
      最近更新 更多